onShutdown
最后更新于:2022-04-02 06:23:53
# onShutdown
[TOC]
此事件在`Server`正常结束时发生,,函数原型
~~~
function onShutdown(swoole_server $server);
~~~
在此之前`Swoole\Server`已进行了如下操作
* 已关闭所有`Reactor`线程、`HeartbeatCheck`线程、`UdpRecv`线程
* 已关闭所有`Worker`进程、`Task`进程、`User`进程
* 已`close`所有`TCP/UDP/UnixSocket`监听端口
* 已关闭主`Reactor`
> 强制`kill`进程不会回调`onShutdown`,如`kill -9`
> 需要使用`kill -15`来发送`SIGTREM`信号到主进程才能按照正常的流程终止
> 在命令行中使用`Ctrl+C`中断程序会立即停止,底层不会回调`onShutdown`
## 注意事项
请勿在`onShutdown`中调用任何`异步`或`协程`相关`API`,触发`onShutdown`时底层已销毁了所有事件循环设施。
';