![]() |
1
3
这是条件变量的一个相当简单的用例。 具有活动工作项的整数计数,受互斥保护。另外,有两个条件变量,一个用于向队列上可用的工作线程发送信号,另一个用于向主线程发送线程已完成的信号。类似于:
注意,循环永远运行。实际上,会有信号使它们退出并运行终止/清理代码。 |
![]() |
2
1
你考虑过使用计数信号量吗? |
![]() |
3
1
从架构的角度来看,这将是线程池的责任。工人和游泳池之间的同步应该存在。 pthread_mutex_lock()或计数信号量(sem_wait()和sem_post())对于这种同步很好。一种方法可以说明为:
|
![]() |
Community wiki · C中有哪些耗时的操作? 1 年前 |
![]() |
Community wiki · 将所有处理器电源都投入到任务中 1 年前 |
![]() |
Community wiki · C++为C添加了什么?[已关闭] 1 年前 |
![]() |
Community wiki · 打印1到1000,不带循环或条件 1 年前 |