diff --git a/HttpServer/Events/OnManagerStart.php b/HttpServer/Events/OnManagerStart.php index f59815f4..fd76470e 100644 --- a/HttpServer/Events/OnManagerStart.php +++ b/HttpServer/Events/OnManagerStart.php @@ -28,14 +28,9 @@ class OnManagerStart extends Callback if (Snowflake::isLinux()) { name('Server Manager.'); } - - System::waitSignal(9 | 15, function () use ($server) { + if (System::waitSignal(9 | 15)) { $server->shutdown(); - while ($ret = Process::wait()) { - var_dump($ret); - } - - }); + } } } diff --git a/HttpServer/Events/OnWorkerStart.php b/HttpServer/Events/OnWorkerStart.php index 7d05de3d..74617068 100644 --- a/HttpServer/Events/OnWorkerStart.php +++ b/HttpServer/Events/OnWorkerStart.php @@ -14,6 +14,7 @@ use Snowflake\Error\Logger; use Snowflake\Event; use Snowflake\Exception\ConfigException; use Snowflake\Snowflake; +use Swoole\Coroutine\System; use Swoole\Server; /** @@ -37,6 +38,9 @@ class OnWorkerStart extends Callback if (!empty($get_name) && !Snowflake::isMac()) { swoole_set_process_name($get_name); } + go(function () use ($server) { + System::waitPid($server->master_pid); + }); if ($worker_id >= $server->setting['worker_num']) { return; }