【发布时间】:2018-11-01 15:05:12
【问题描述】:
假设我们有两个正在运行的线程,它们都会抛出异常,并且这些线程中有异常处理程序。 C++ 是否能够处理这个问题,而不会遇到终止或未定义的行为。
异常属于每个线程,每个线程一次只能有一个异常,对吗?
【问题讨论】:
-
您是否捕捉任何异常?
-
@KerrekSB 是的。已编辑
-
如何将这个问题复制为“将 main() 捕获线程抛出的异常?”
-
我不知道。我要重新营业了。
-
将异常视为函数调用返回的另一种方式。调用/返回发生在单个线程的堆栈上。例外情况也是如此。 (注意:如果 top-level 函数在其多个线程之一中抛出,我还不足以知道多线程进程应该发生什么。)
标签: c++ multithreading exception