【发布时间】:2009-12-07 03:58:01
【问题描述】:
有人可以帮我同步不同数量的线程吗?问题是当线程数可以从 1 变化到 9 时,例如当两个客户端连接到服务器时,通信应该以这种形式同步:client1、client2、client1、client2 ......直到通信结束。 我尝试使用 pthread_join、pthread_mutex_lock 和 pthread_mutex_lock,但这会阻塞 client1,直到完成通信以启动 client2。
任何帮助将不胜感激并感谢您的回复
【问题讨论】:
-
如果您想轮流通过哪个客户端进行通信,而不是同时处理与多个客户端的通信,则无需使用多个线程。
-
为什么不用多线程?多线程比使用 fork 或类似的更好,因为它与大多数操作系统兼容。
-
你能解释一下为什么你的线程需要按特定顺序进入锁定区域吗?
-
感谢您的回复。我正在尝试运行一个可以同时涉及两个或多个软件的模拟。在这种情况下,应该在连接的客户端的每个时间步重新连接服务器。这就是我寻求帮助的原因......
标签: c++ c multithreading pthreads