【发布时间】:2018-08-25 20:47:48
【问题描述】:
我正在并行运行一些任务,通常一次运行 4 个。对于一个测试,我需要一个屏障,因此它们在那时是同步的。
然后将屏障配置为new Barrier(4);。问题是有时可能会发生异常,这可能导致任务在某个点停止并且不再到达 Barrier。
这会使屏障永远等待,我该如何解决? 是否可以配置一个 Timeout 来释放障碍,并测试已经到达的障碍直到那一刻?
【问题讨论】:
-
问题不是障碍,而是您的代码没有正确处理异常。您实际上可以处理它的可能性并不好,请确保您的程序大声轰炸。
标签: c# parallel-processing timeout barrier