Aerys\Process::registerSignalHandler PHP Method

registerSignalHandler() private method

private registerSignalHandler ( )
    private function registerSignalHandler()
    {
        if (php_sapi_name() === "phpdbg") {
            // phpdbg captures SIGINT so don't bother inside the debugger
            return;
        }
        $onSignal = coroutine([$this, "stop"]);
        if (\Amp\reactor() instanceof UvReactor) {
            \Amp\onSignal(\UV::SIGINT, $onSignal, ["keep_alive" => false]);
            \Amp\onSignal(\UV::SIGTERM, $onSignal, ["keep_alive" => false]);
        } elseif (extension_loaded("pcntl")) {
            \Amp\repeat("pcntl_signal_dispatch", 1000, ["keep_alive" => false]);
            pcntl_signal(\SIGINT, $onSignal);
            pcntl_signal(\SIGTERM, $onSignal);
        }
    }