非同期呼び出しを同期に変換するための良い習慣(パターン)はありますか?
私は、メソッドがすべて非同期であるサードパーティのライブラリを持っています。almoustの結果を取得するには、イベントをリッスンする必要のあるメソッドを取得します。これにより、イベントにコンテキストがもたらされます。基本的には次のようになります。
service.BeginSomething(...);
service.OnBeginSomethingCompleted += ;
私が必要としているのは、BeginSomethingが実際に完了した後(つまり、OnBeginSomethingCompletedがトリガーされた後)にコードを実行することです。イベントでの応答を処理することは非常に不便です。
私が考えることができる唯一の方法は、Thread.Sleepループを実行し、フォームの一部のフィールドが更新されるまで待つことですが、それは非常にエレガントなソリューションのようには見えません。
.net4.0を使用しています。