[英]Parallel.Foreach exceptions and cancel
我試圖找出Parallel.Foreach的異常和取消工作方式。 所有示例似乎都涉及任務。
Parallel.Foreach中的異常會發生什么?
- 我將整個循環包裝在try / catch(AggregateException)中嗎?
- 循環中的所有其他任務,即使是尚未啟動的任務,也會在異常被捕獲之前運行完成嗎?
與CancelationToken相同的問題
簡而言之,聚合每個循環中的異常並在AggregateException下顯示。 每當發生異常時,允許完成啟動的循環,但不會啟動其他循環。 ForEach確實有許多重載 ,允許一個人擁有本地init和finally塊,而body操作也采用ParallelLoopState ,循環體代碼可以用來檢查另一個循環上的異常,然后在需要時自行協作。
請參閱提供其他信息的文章
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.