5
のは、私が似てすぐに別の非同期メソッドを呼び出すメソッドまたは持っているとしましょう:パススルー非同期メソッドは本当にawait/asyncパターンを必要としますか?
//Main method
public async Task<int> Foo1(int x)
{
var result = await DoingSomethingAsync(x);
return DoSomethingElse(result);
}
//other method
public async Task<int> Foo2(Double double)
{
return await Foo1(Convert.ToInt32(double));
}
Foo2
ニーズは/持っている必要があることを具体的な理由があるのを非同期/のawait、単に呼び出すこととは対照的に:
//other method
public Task<int> Foo3(Double double)
{
return Foo1(Convert.ToInt32(double));
}
消費者には
、これはまだかかわらずの、likeso、待望のようになります。すべてのこれらのステートメント
int x = await Foo1(1);
int x = await Foo2(1D);
int x = await Foo3(1D);
ますコンパイル。コンパイラは2つの異なるメソッドに対して異なるILを生成しますか?