From 05f990df405299436dc8a1ff8575104253fb73b6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mr=C2=B7x?= Date: Wed, 21 Oct 2020 15:11:46 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E5=90=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- HttpServer/Events/OnManagerStart.php | 3 --- HttpServer/Events/OnStart.php | 11 +++++++++++ 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/HttpServer/Events/OnManagerStart.php b/HttpServer/Events/OnManagerStart.php index fd76470e..cb27f279 100644 --- a/HttpServer/Events/OnManagerStart.php +++ b/HttpServer/Events/OnManagerStart.php @@ -28,9 +28,6 @@ class OnManagerStart extends Callback if (Snowflake::isLinux()) { name('Server Manager.'); } - if (System::waitSignal(9 | 15)) { - $server->shutdown(); - } } } diff --git a/HttpServer/Events/OnStart.php b/HttpServer/Events/OnStart.php index 9107ec86..9e6eb374 100644 --- a/HttpServer/Events/OnStart.php +++ b/HttpServer/Events/OnStart.php @@ -29,6 +29,17 @@ class OnStart extends Callback if (Snowflake::isLinux()) { name(rtrim(Config::get('id', 'system:'), ':')); } + + Process::signal(9 | 15, function () use ($server) { + while ($ret = Process::wait()) { + if ($ret['signal'] == 9 || $ret['signal'] == 15) { + $server->shutdown(); + } else { + $server->reload(); + } + } + }); + } }