当前位置: 技术问答>linux和unix
如何pause&resume一个线程
来源: 互联网 发布时间:2015-08-17
本文导语: 现在需要能够通过简单的函数调用就能够对一个线程进行pause & resume & stop & start的操作。 我是想封装到一个类里面,提供这样的4个函数,请问应该如何实现。只能用标准的linux函数,不 能利用其他的类,比如qt什...
现在需要能够通过简单的函数调用就能够对一个线程进行pause & resume & stop & start的操作。
我是想封装到一个类里面,提供这样的4个函数,请问应该如何实现。只能用标准的linux函数,不
能利用其他的类,比如qt什么的。
我是想封装到一个类里面,提供这样的4个函数,请问应该如何实现。只能用标准的linux函数,不
能利用其他的类,比如qt什么的。
|
http://www.linuxforum.net/forum/showflat.php?Cat=&Board=program&Number=520132&page=0&view=collapsed&sb=5&o=7&fpart=
|
没有现成的方法,不知道现在有没有
我以前将pthread封装成线程库的时候倒是实现了一个
线程起来的时候注册一个信号函数,该函数就是在一个条件变量上wait
pause就是通过管理线程发信号给该函数
resume就是恢复那个条件变量
我以前将pthread封装成线程库的时候倒是实现了一个
线程起来的时候注册一个信号函数,该函数就是在一个条件变量上wait
pause就是通过管理线程发信号给该函数
resume就是恢复那个条件变量
|
设置pthread_cond_wait()来暂停线程。外面pthread_cond_signal或者pthread_cond_broadcast来触发继续执行。
|
用信号量来控制
suspend 用 sem_wait
resume 用 sem_post
http://search.csdn.net/Expert/topic/976/976336.xml?temp=.2677576
suspend 用 sem_wait
resume 用 sem_post
http://search.csdn.net/Expert/topic/976/976336.xml?temp=.2677576