如果一个信号量中有多个线程抛出异常,会发生什么。
假设一个 sempahore 可以有 10 个线程,它们可以同时进入,线程#2、5、6、7、9 将抛出异常,然后其他不会抛出异常的线程将成功运行或被中止。
它是否与 AggregatedException 类有某种关联。
最佳答案
假设异常发生时其他线程已经在信号量内部,它们将成功运行到完成。如果您希望它们提前终止,请使用 SemaphoreSlim带有 cancellation token 的对象.
关于c# - 如果在信号量的情况下多个线程抛出异常怎么办,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12257331/