diff --git a/Abstracts/BaseProcess.php b/Abstracts/BaseProcess.php index 1e7d7c5..f563f37 100644 --- a/Abstracts/BaseProcess.php +++ b/Abstracts/BaseProcess.php @@ -90,14 +90,15 @@ abstract class BaseProcess implements OnProcessInterface public function onSigterm(): static { if (!Context::inCoroutine()) { - Process::signal(SIGTERM, fn($data) => $this->onShutdown($data)); + Process::signal(SIGTERM | SIGINT, fn($data) => $this->onShutdown($data)); } else { - Coroutine::create(function () { - $data = Coroutine::waitSignal(SIGTERM, -1); + $listen = function () { + $data = Coroutine::waitSignal(SIGTERM | SIGINT, -1); if ($data) { $this->onShutdown($data); } - }); + }; + Coroutine::create($listen); } return $this; }