【发布时间】:2014-12-23 16:51:43
【问题描述】:
public bool SampleMethod()
{
Parallel.ForEach(List, Val =>
{
// execute some time consuming code
});
return true;
}
我注意到Parallel.Foreach 正在阻塞线程,直到 foreach 循环中的所有任务都完成。
对于上面的方法,我想立即返回 true,即使 Parallel.foreach 块中的操作仍在执行(它们应该仍然在后台运行,直到所有操作都完成)。
这可能吗?
【问题讨论】:
-
使用任务 API 在后台执行,并行 API 不用于此目的。您可以启动任务,而不是等待它们完成并在启动所有任务后返回 true
标签: c# parallel-processing task parallel.foreach