public bool SampleMethod()
{
Parallel.ForEach(List, Val =>
{
// execute some time consuming code
});
return true;
}
我注意到Parallel.Foreach
阻塞了線程,直到foreach循環中的所有任務都完成爲止。在Parallel.Foreach完成之前返回一些東西
對於上面的方法,即使Parallel.foreach
塊中的操作仍在執行(我們仍然應該在後臺運行,直到所有操作都完成),我要立即返回true。
這可能嗎?
使用任務API在後臺執行執行,並行API不是爲此目的。您可以啓動任務,而不是等待它們完成並在啓動所有任務後返回true –