/**
 * 获取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;
}