signo = $signo; } /** * Set a signal handler, overwriting any previous handler * * @param callable $handler * @return void */ public function setHandler(callable $handler):void { pcntl_signal($this->signo, $handler); } /** * Dispatch the signal to the specified pid. Default is own pid * * @param int $pid * @return boolean */ public function dispatch(int $pid=null):bool { return posix_kill($pid?:posix_getpid(), $this->signo); } }