5
私は何かすべての非同期操作の待機方法
public async void walk(StorageFolder folder)
{
IReadOnlyList<StorageFolder> subDirs = null;
subDirs = await folder.GetFoldersAsync();
foreach (var subDir in subDirs)
{
var dirPath = new Profile() { FolderPath = subDir.Path};
db.Insert(dirPath);
walk(subDir);
}
tbOut.Text = "Done!";
}
を行うには再帰関数を使用して、私はtbOut.Textは=「完了!」というほしいです。すべての反復が終了した後にのみ実行されます。今はiterationsが処理中に同時に起こっています。このような関数を実行すると、結果は同じです。この機能が完全に終了するのを待つ方法は?
確かに、あなたはほとんど* * 'void'非同期メソッドを持つべきではありません...彼らは基本的にのみ存在し、イベントハンドラを許可するようにしている:あなたの歩行機能は非常に似
Task
に戻り値の型を変更awaitableようにするに 非同期にする。 –Thanx!それは動作します! – splash27