当前位置: 技术问答>linux和unix
在多进程中如何做一个阻塞
来源: 互联网 发布时间:2016-03-24
本文导语: C语言,一个远端控制的红外遥控,在客户端方面发送第一次请求远端信息,客户端通过网络请求从远端得到信息保存到当地。客户端从本地取数据做处理。问题是这两个过程是在同一个函数内部处理,我现在使用了...
C语言,一个远端控制的红外遥控,在客户端方面发送第一次请求远端信息,客户端通过网络请求从远端得到信息保存到当地。客户端从本地取数据做处理。问题是这两个过程是在同一个函数内部处理,我现在使用了一个sleep函数,虽然能实现但是听说sleep不是很好!请问下各位还有什么好的办法在此做个阻塞。
|
用sleep的话会让整个程序都睡眠了,可以将你的函数分成两个线程,通过信号量来同步
|
可以用fork()来做,就是客户端的两个操作不能同步,一个处理完另一个再处理。。
如:fork(),子进程先进行处理,而父进程等待子进程处理完毕再处理。。。
设置信号量也可以解决。。
如:fork(),子进程先进行处理,而父进程等待子进程处理完毕再处理。。。
设置信号量也可以解决。。
|