gpt4 book ai didi

c# - Parallel.Foreach 异常和取消

转载 作者:IT王子 更新时间:2023-10-29 04:49:54 28 4
gpt4 key购买 nike

我试图找出 Parallel.Foreach 的异常和取消是如何工作的。所有示例似乎都与任务有关。

Parallel.Foreach 中的异常会发生什么?
- 我是否将整个循环包装在 try/catch(AggregateException) 中?
- 循环中的所有其他任务,甚至尚未开始的任务,是否会在异常被捕获之前运行完成?

CancellationToken 同样的问题

最佳答案

简而言之,每个循环中的异常被聚合并呈现在AggregateException下。每当发生异常时,允许完成已启动的循环,但不会启动进一步的循环。 ForEach 确实有很多 overloads允许一个人拥有本地 init & finally block 和 body Action 也需要 ParallelLoopState该循环体代码可用于检查另一个循环中是否发生异常,然后在需要时自行合作中断它。

参见 this article提供额外信息

关于c# - Parallel.Foreach 异常和取消,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5075689/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com