Junior — Middle
Чӣ гуна иҷро кардани интизориии анҷоми ҳамаи вазифаҳо аз маҷмӯи вазифаҳо?
sobes.tech AI
Ҷавоб аз AI
Дар C# барои интизор шудан ба анҷоми ҳамаи вазифаҳо аз як гурӯҳ, шумо метавонед усули Task.WhenAll-ро истифода баред. Ин усул массив ё ҷамъоварии вазифаҳоро қабул мекунад ва вазифае бармегардонад, ки вақте ҳамаи вазифаҳое, ки дода шудаанд, ба анҷом мерасанд, ба охир мерасад.
Масалан:
Task[] tasks = new Task[]
{
Task.Run(() => DoWork(1)),
Task.Run(() => DoWork(2)),
Task.Run(() => DoWork(3))
};
await Task.WhenAll(tasks);
void DoWork(int id)
{
// коре муайян
Console.WriteLine($"Вазифа {id} тамом шуд");
}
Агар шумо async/await-ро истифода набаред, метавонед Task.WaitAll(tasks)-ро даъват кунед, ки ҷараёни ҳозираро то анҷоми ҳамаи вазифаҳо монеъ мешавад.