私はAsyncCtpLibrary v.3を追加しました。非同期のWebページからいくつかのサンプルコードを取得しました。 TestFixtureで包み込んで遊んでいます。asyncでエラーが発生しました
エラーが発生しています:なぜでしょうか?
エラー1 - 無効なトークン 'ボイド' クラス、構造体、またはインターフェイスメンバー宣言
エラー2 - 。
[TestFixture]
public class AsyncTests
{
[Test]
public async void AsyncRunCpu()
{
Console.WriteLine("On the UI thread.");
int result = await TaskEx.Run(
() =>
{
Console.WriteLine("Starting CPU-intensive work on background thread...");
int work = DoCpuIntensiveWork();
Console.WriteLine("Done with CPU-intensive work!");
return work;
});
Console.WriteLine("Back on the UI thread. Result is {0}.", result);
}
public int DoCpuIntensiveWork()
{
// Simulate some CPU-bound work on the background thread:
Thread.Sleep(5000);
return 123;
}
}
async/awaitキーワードにVS11を使用しているとします。それが大きな違いをもたらすかどうかは分かりませんが、新しいTask.Factory.StartNewを試してみてください。また、Runコマンドの後に.Resultを追加してみてください。 .ResultはTasksの戻り値の型です。この場合はintです – Jon
'My Documents'の下にAsync CTPフォルダがあるかどうか確認してください。 async CTPのインストールに関する多くの問題がありました(フォーラムで議論されています)(http://social.msdn.microsoft.com/Forums/en-US/async/threads)。これは、非同期CTPが他のVSアップデートを妨害する帯域外アップデートであるという事実に帰着します。この時点(VS11が差し迫っている)では、インストーラを修正することは考えにくいと思います。 VS11がリリースされると、私は非同期CTPが引き出され、もはや利用できなくなることを期待しています。 –