gpt4 book ai didi

multithreading - 跨线程的异常传播?

转载 作者:行者123 更新时间:2023-12-04 06:40:04 25 4
gpt4 key购买 nike

关于This question .

C++11 添加了将异常编码到不同线程的能力(使用 std::exception_ptr )并恢复其传播。

我想知道这样的传播是否是自动的,也就是说:如果我无法处理线程中的异常,它是否会自动在父线程中传播?

我有点怀疑(或者它必须以某种方式明确等待 join),但我还不精通 C++11。值得注意的是,我认为在 std::future 的情况下,它可以自动存储异常。

最佳答案

传播不是自动的 thread .如果一个线程抛出,并且该异常没有被捕获,程序无论如何都会终止。
futureshared_future将在子线程中存储一个未捕获的异常。当 get 时,该异常会自动传播。叫做。

关于multithreading - 跨线程的异常传播?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7272306/

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