workerman 不能关闭怎么办?
问题:启动脚本里执行Worker::stopAll()并不能停止workerman,Worker::stopAll()只有在运行workerman的主进程里执行才有效,外部其它进程执行没有效果。
停止Workerman的流程是
1、找到Workerman主进程pid
2、给pid发送SIGINT信号(posix_kill(SIGINT, pid))
3、workerman主进程收到SIGINT信号后自身执行Worker::stopAll()完成服务停止。
这三个步骤workerman内部应封装好,调用流程是
1、设置$argv = 'stop';
2、运行Worker::runAll();
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
长按识别二维码并关注微信
更方便到期提醒、手机管理