如何用一个control thread控制一组worker thread

我想实现一个control thread控制一组worker thread,程序逻辑如下:
(1)control thread和所有worker thread都在运行;
(2)当control thread检测到条件变化,suspend所有的worker thread;
(3)Control thread检查到所有的worker thread都被suspend,修改内存中的值;
(4)Control thread修改完,resume所有worker thread. 我的问题是:
(1)一个control thread如何控制一组worker thread?现在想到的办法是用读写锁,请问有其它的办法吗?
(2)Control thread如何检查到所有的worker thread都被suspend?我现在想的办法是用计数器.还有别的办法吗?
Thanks in advance!

阅读 3.8k
1 个回答

1.可以使用信号控制
2.可以使用条件变量

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进