From 22106cfcdc39fbee6f872b0468d775171fb91374 Mon Sep 17 00:00:00 2001 From: "as2252258@163.com" Date: Sat, 27 Feb 2021 02:55:34 +0800 Subject: [PATCH] modify --- HttpServer/Events/OnWorkerStart.php | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/HttpServer/Events/OnWorkerStart.php b/HttpServer/Events/OnWorkerStart.php index 16d54177..b308a32a 100644 --- a/HttpServer/Events/OnWorkerStart.php +++ b/HttpServer/Events/OnWorkerStart.php @@ -61,14 +61,18 @@ class OnWorkerStart extends Callback public function onTaskSignal(Server $server, int $workerId) { go(function () use ($server, $workerId) { - $sigkill = Coroutine::waitSignal( SIGKILL | SIGUSR2 | SIGUSR1, -1); - if ($sigkill !== false) { - while (Snowflake::app()->isRun()) { - sleep(1); + try { + $sigkill = Coroutine::waitSignal(SIGKILL | SIGUSR1, -1); + if ($sigkill !== false) { + while (Snowflake::app()->isRun()) { + Coroutine::sleep(1); + } } + Snowflake::app()->stateInit(); + $server->stop(); + } catch (\Throwable $exception) { + $this->addError($exception); } - Snowflake::app()->stateInit(); - $server->stop(); }); }