/**
* 获取PID
* @return int|null
* @throws \RuntimeException
*/
public function getPid()
{// 获取进程 ID
if ($this->isSigchildEnabled()) {
throw new \RuntimeException('This PHP has been compiled with --enable-sigchild. The process identifier can not be retrieved.');
}// 如果是单独的子进程 直接提示 运行时 异常
$this->updateStatus(false);// 更新状态 为 false
return $this->isRunning() ? $this->processInformation['pid'] : null;// 进行 Running ,就返回 运行的 ID
}
/**
* 将一个 POSIX 信号发送到进程中
* @param int $signal
* @return Process
*/
public function signal($signal)
{// 将一个 POSIX 信号发送到进程中
$this->doSignal($signal, true);// 发送 POSIX信号
return $this;
}
/**
* 禁用从底层过程获取输出和错误输出。
* @return Process
*/
public function disableOutput()
{// 禁用 从底层过程 获取输出和错误输出
if ($this->isRunning()) {// 如果进行中
throw new \RuntimeException('Disabling output while the process is running is not possible.');
}
if (null !== $this->idleTimeout) {// 如果 时间输出 不为空
throw new \LogicException('Output can not be disabled while an idle timeout is set.');
}
$this->outputDisabled = true;// 输出 失败
return $this;
}