linux进程常见信号

使用swoole进行进程相关编程时,经常会遇到关于进程信号的问题,在这里做一个整理

SIGCHLD(17)

子进程退出的时候会向其父进程发送一个SIGCHLD信号

Swoole\Process::signal(SIGCHLD, function ($sig) {
    //必须为false,非阻塞模式
    while ($ret = Swoole\Process::wait(false)) {
        echo "PID={$ret['pid']}\n";
    }
});

swoole监听SIGCHLD信号,设置回调函数对子进程进行非阻塞回收

SIGTERM(15)

正常结束的信号,kill命令默认信号.

// 默认发送信号 SIGTERM
Swoole\Process::kill(int $pid, int $signo = SIGTERM): bool

你可能感兴趣的:(phplinuxswoole)