Linux线程同步的问题

lr2131 2016-09-02 06:06:35
想请教一个关于Linux多线程的问题:

有两个线程A和B,两个线程的关系是这样:
1.如果B线程在睡眠状态,或者说阻塞状态,A线程可以唤醒B线程。
如果B线程在运行状态,A线程也可以能会去唤醒B线程,但因为此时B本来就在运行状态,所以希望A的唤醒动作
不要对B有任何影响,也不要有什么标记量++的那些行为。
2.B线程在睡眠一定的时间后,如果这段时间A线程没来唤醒B,那么B线程也要醒来,当然B醒来后要知道是时间到了醒来,还是 被A唤醒的。

B线程用pthread_cond_timedwait,这样待时间的睡眠。
而A线程用 pthread_cond_signal来唤醒A。
这样可以吗?
...全文
364 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
renwotao2009 2016-09-02
  • 打赏
  • 举报
回复
应该可以,只是你A线程在B线程正在执行时,唤醒B线程,怎么执行?

23,110

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧