すでに待機しているタスクでawaitを呼び出すのは悪い習慣ですか?パフォーマンスが悪いですか?パフォーマンスが悪い同じタスクで複数の時間を待って呼び出しています
class SomeClass
{
string Prop1;
string Prop2;
}
public void SomeMethod()
{
Task<SomeClass>[] someClassInstanceTasks = Task<SomeClass>[10];
foreach(var task in someClassInstanceTasks)
{
task = GetSomeClassInstanceAsync();
}
someClassInstanceTasks.WaitAll();
SomeClass someClassInstance = someClassInstanceTasks[0].Result;
//OR (which is recommended)
SomeClass someClassInstance = await someClassInstanceTasks[0];
}
は個人的に、私は、誰かがバグを導入し、WaitAll()文でマックの場合には、追加の安全対策としてのawaitのアプローチを好みます。
あなたの例では '.WaitAll()'を省略していますが、とにかく各タスクを待っている場合は不要です – itsme86
それはどうか –
あなたは 'WaitAll'を待つべきです...あなたは仕事ではなく結果の配列を返すでしょう –