💎一站式轻松地调用各大LLM模型接口,支持GPT4、智谱、星火、月之暗面及文生图 广告
# swoole_server->stop 使当前worker进程停止运行,并立即触发`onWorkerStop`回调函数。 ```php function swoole_server->stop(int $worker_id = -1, bool $waitEvent = false); ``` * 使用此函数代替`exit/die`结束Worker进程的生命周期 * `$waitEvent`可以控制退出策略,默认为`false`表示立即退出,设置为`true`表示等待事件循环为空时再退出 * 如果要结束其他Worker进程,可以在`stop`里面加上`worker_id`作为参数或者使用`swoole_process::kill($worker_pid)` > 此方法在`1.8.2`或更高版本可用 > `$waitEvent`在`1.9.19`或更高版本可用 异步退出 ---- 异步服务器在调用`stop`退出进程时,可能仍然有事件在等待。比如使用了`Swoole\MySQL->query`,发送了`SQL`语句,但还在等待`MySQL`服务器返回结果。这时如果进程强制退出,`SQL`的执行结果就会丢失了。 设置`$waitEvent = true`后,底层会使用异步安全重启策略。先通知`Manager`进程,重新启动一个新的`Worker`来处理新的请求。当前旧的`Worker`会等待事件,直到事件循环为空或者超过`max_wait_time`后,退出进程,最大限度的保证异步事件的安全性。