- 论坛徽章:
- 0
|
程序的工作流程是由一个主线程搜索数据放到一个共享队列中, 然后由A,b,c三个THREAD通过信号机制来获取任务, 程序一开始工作正常, 但过一段时间后,a,b,c三个线程中有一个会自动消失, 用调试命令查看, 结果出现如下状态(请看第4号lwp):
- /1: lwp_sema_wait(0xFED09E30) = 0
- /1: lwp_sema_wait(0xFED09E30) (sleeping...)
- /2: signotifywait() (sleeping...)
- /4: lwp_sema_wait(0xFF0CFA58) (sleeping...)
- /5: lwp_sema_wait(0xFEC07E30) (sleeping...)
- /6: lwp_sema_wait(0x00035D80) (sleeping...)
- /7: lwp_cond_wait(0xFF0D55C8, 0xFF0D55D8, 0xFF065BF0) (sleeping...)
- /4: Received signal #14, SIGALRM, in lwp_sema_wait() [caught]
- /4: lwp_sema_wait(0xFF0CFA58) Err#91 ERESTART
- /6: lwp_sema_wait(0x00035D80) = 0
- /4: Received signal #14, SIGALRM, in lwp_sema_wait() [caught]
- /4: lwp_sema_wait(0xFF0CFA58) Err#91 ERESTART
- /5: lwp_sema_wait(0xFEC07E30) = 0
复制代码
不知Err#91 ERESTART 是什么意思啊? 如何才能避免呢? 谢谢~ |
|