2

Windowsフォームアプリケーションでバックグラウンドスレッドを作成して、巨大なデータの処理に時間がかかるプロセスを実行しています。ただし、このスレッドが作業を完了するまで、他のメソッドまたはプロセスを待機させたいと考えています。

バックグラウンド スレッドを作成するために、以下のインライン コードを使用しました。

Task.Factory.StartNew(() => GenerateXml2Resx(account, features, codes, outputDir));

したがって、xml データからすべての *.resx ファイルを生成するこのプロセスが完了したら、アプリケーションをさらに進めたいと思います。

ありがとう。

4

3 に答える 3

3

コールバックで他のメソッドを呼び出す必要がありTask.ContinueWith()ます。これは、最初のタスクが終了した後にのみ実行されます。

UIスレッドで実行する場合は、を渡しTaskScheduler.FromCurrentSynchronizationContext()ます。

于 2012-10-11T13:26:43.817 に答える
1

Thread.Join を使用します: http://msdn.microsoft.com/en-us/library/95hbf2ta(v=vs.80).aspx

于 2012-10-11T13:33:35.650 に答える
0

私は Task.Wait がうまくいくと思いますhttp://msdn.microsoft.com/en-us/library/dd537610.aspx

于 2012-10-11T13:29:23.403 に答える