你好,我有一个名为_noOfThreads
的定义任务同时运行的变量。因此我使用%
运算符继续进行任务,在循环结束时我使用Tasks.WaitAll
。这是代码片段。
for (int index = 0; index < count; index++)
{
if (index < _noOfThreads)
tasks[index] = Task.Factory.StartNew(somedelegate);
else
tasks[index % _noOfThreads].ContinueWith(task => { foo.bar(); },
TaskContinuationOptions.AttachedToParent);
}
Task.WaitAll(tasks);
然而,我注意到它不会等待子任务完成。一旦父任务完成,Task.WaitAll
后面的下一行代码就会执行。我该如何修改这段代码以等待子任务完成?