- Process::signal
Process::signal
设置异步信号监听。
bool Process::signal(int $signo, callable $callback);
- 此方法基于
signalfd和eventloop是异步IO,不能用于同步程序中 - 同步阻塞的程序可以使用pcntl扩展提供的
pcntl_signal $callback如果为null,表示移除信号监听- 如果已设置了此信号的回调函数,重新设置时会覆盖历史设置
使用举例:
Process::signal(SIGTERM, function($signo) {echo "shutdown.";});
Server中不能设置SIGTERM和SIGALAM信号Process::signal在1.7.9以上版本可用 信号移除特性仅在1.7.21或更高版本可用
