非同期呼び出しの待ち合わせを簡潔に
「非同期呼び出しを行い、すぐさまその完了を待ち合せたいたい」ことって、ありますよね? ボクはあります。 昨夜、非同期メソッドのテストを書いていて、そういう状況になりました。 よく使うパターンは var client = new LiveConnectClient(session); using (var signal = new ManualResetEventSlim(false)) {...
View ArticleTask の完了待ちを簡潔に
TPM な API のテストを書いていて、 var client = new LiveConnectClient(session); var task = client.Get("me"); task.Wait(); var result = task.Result; // 実行結果の評価 のようなコード=タスクの完了待ち合わせと処理結果の取得を大量に書く羽目になりました。...
View ArticleTaskが使えない?
表題のような話題が TL に流れていたので検証してみた。 結果、これ View the code on Gist. も、これ View the code on Gist. も、動きます。 でも、これ View the code on Gist. はダメ。 IDE のエディタに警告を受けるし、ビルドも通りません。 要するに、表題の件は Task に起因する制限ではなくて、「ラムダ式内で yield...
View Article
More Pages to Explore .....