当前位置: 技术问答>linux和unix
posix线程挂起与恢复问题!
来源: 互联网 发布时间:2016-12-05
本文导语: 问题描述: 在程序的某个模块中创建4个线程(这4个线程公用同一个函数体,且无静态、全局变量),之后立即被挂起,当此程序的其他模块使得某个条件成立,那么这4个被挂起的线程中某个线程将被唤醒并执行相...
问题描述:
在程序的某个模块中创建4个线程(这4个线程公用同一个函数体,且无静态、全局变量),之后立即被挂起,当此程序的其他模块使得某个条件成立,那么这4个被挂起的线程中某个线程将被唤醒并执行相应的任务;如果其他模块使得4个条件都成立,那么4个线程都将被唤醒,当线程执行完任务时候又将被挂起,等待下次被唤醒.请给些指导,谢谢!
在程序的某个模块中创建4个线程(这4个线程公用同一个函数体,且无静态、全局变量),之后立即被挂起,当此程序的其他模块使得某个条件成立,那么这4个被挂起的线程中某个线程将被唤醒并执行相应的任务;如果其他模块使得4个条件都成立,那么4个线程都将被唤醒,当线程执行完任务时候又将被挂起,等待下次被唤醒.请给些指导,谢谢!
|
不太明白楼主的问题。
用信号量应该可以解决。
用信号量应该可以解决。
|
你只是发送了通知,并没有提前修改Flag 变量为1 啊
|
貌似是信号量来做唤醒操作
当其他模块某一条件成立时,唤醒对应的线程来处理....
当其他模块某一条件成立时,唤醒对应的线程来处理....
|
使用信号量;为了防止竞争问题,调用那个函数时用一下锁
您可能感兴趣的文章:
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。