Handle SIGINT after Swoole server start
This commit is contained in:
@@ -11,6 +11,8 @@ use Kiri\Server\Events\OnBeforeShutdown;
|
|||||||
use Kiri\Server\Events\OnShutdown;
|
use Kiri\Server\Events\OnShutdown;
|
||||||
use Kiri\Server\Events\OnStart;
|
use Kiri\Server\Events\OnStart;
|
||||||
use Swoole\Server as SServer;
|
use Swoole\Server as SServer;
|
||||||
|
use Swoole\Process;
|
||||||
|
use const SIGINT;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -35,6 +37,9 @@ class OnServer extends Server
|
|||||||
public function onStart(SServer $server): void
|
public function onStart(SServer $server): void
|
||||||
{
|
{
|
||||||
Kiri::setProcessName(sprintf('Master[%d]', $server->master_pid));
|
Kiri::setProcessName(sprintf('Master[%d]', $server->master_pid));
|
||||||
|
Process::signal(SIGINT, static function () use ($server): void {
|
||||||
|
$server->shutdown();
|
||||||
|
});
|
||||||
|
|
||||||
event(new OnStart($server));
|
event(new OnStart($server));
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user