問題:?jiǎn)?dòng)腳本里執(zhí)行Worker::stopAll()并不能停止workerman,Worker::stopAll()只有在運(yùn)行workerman的主進(jìn)程里執(zhí)行才有效,外部其它進(jìn)程執(zhí)行沒有效果。
停止Workerman的流程是
1、找到Workerman主進(jìn)程pid
2、給pid發(fā)送SIGINT信號(hào)(posix_kill(SIGINT, pid))
3、workerman主進(jìn)程收到SIGINT信號(hào)后自身執(zhí)行Worker::stopAll()完成服務(wù)停止。
?
這三個(gè)步驟workerman內(nèi)部應(yīng)封裝好,調(diào)用流程是
1、設(shè)置$argv = ‘stop’;
2、運(yùn)行Worker::runAll();
?推薦:workerman
? 版權(quán)聲明
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載。
THE END
喜歡就支持一下吧
相關(guān)推薦