您的位置:首页 > 其它

信号量睡眠问题

2015-08-12 00:00 155 查看
今天测试发现一个bug,当对我负责的模块一起执行两个命令时会有错误,例如"command 1;command 2"。

分析代码发现两个问题,

第一、command 1中存在创建后台进程,当创建后台进程时,本进程继续执行,忽略后台进行执行情况,所以,可能存在后台进行为执行完成,而command 2就开始执行的情况,命令执行顺序错乱。

第二、command 1中发了一个SIGTERM信号,而模块处理函数中存在sleep类型函数,当存在此类函数时,进程会睡眠而让出CPU,此时会继续执行command 2,命令执行顺序错乱。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: