【发布时间】:2023-03-23 14:26:02
【问题描述】:
程序有 n 个线程(图形着色,一个线程负责一个节点)执行相同的代码。如何以这样的方式建立一个同步点:在n个线程中的每一个都达到这一点之前,没有一个线程可以通过那个点?想法类似于当线程到达特定位置时递增的计数器。在 C# 中解决它的最佳方法是什么?
【问题讨论】:
标签: c# multithreading synchronization mutex semaphore
程序有 n 个线程(图形着色,一个线程负责一个节点)执行相同的代码。如何以这样的方式建立一个同步点:在n个线程中的每一个都达到这一点之前,没有一个线程可以通过那个点?想法类似于当线程到达特定位置时递增的计数器。在 C# 中解决它的最佳方法是什么?
【问题讨论】:
标签: c# multithreading synchronization mutex semaphore
有多种方法可以做到这一点。
System.Threading.Barrier 类 (Fx4+) 似乎很合适,请参阅 An Intro to Barrier
【讨论】: