日期:2014-05-16  浏览次数:20995 次

linux sem_wait 为什么会阻塞进程?
我在主线程中 调用pthread_create创建了一个线程B,主线程位线程A
在B线程线程函数里有个sem_wait,等待主线程某一操作完成的信号
但是程序运行到这里就卡住了,没有切到主线程中去
难道sem_wait()会阻塞进程吗?

------解决方案--------------------
另一个线程sem_post就能继续啊!应该是仅能阻塞当前线程啊!
------解决方案--------------------
另一个线程要sem_post。
------解决方案--------------------
楼主看一下man手册,sem_wait是阻塞等信号,sem_trywait等不到马上返回,sem_timewait可以设置等待时间。