From 5b84472864cdaa74009ebd1bb6dd71e561f43408 Mon Sep 17 00:00:00 2001 From: Slavasil Date: Fri, 15 Nov 2024 10:56:49 +0300 Subject: [PATCH] add signal handling --- main.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/main.cpp b/main.cpp index 48cb950..4a3c4d1 100644 --- a/main.cpp +++ b/main.cpp @@ -3,6 +3,10 @@ #include #include +void on_signal(uv_signal_t *h, int signum) { + uv_stop(uv_default_loop()); +} + int main() { uv_loop_t *loop = uv_default_loop(); @@ -15,7 +19,13 @@ int main() { spdlog::error("got error!"); } }); + uv_signal_t signalHandles[2] = {}; + uv_signal_init(loop, signalHandles); + uv_signal_start(signalHandles, on_signal, SIGINT); + uv_signal_init(loop, signalHandles + 1); + uv_signal_start(signalHandles + 1, on_signal, SIGTERM); uv_run(loop, UV_RUN_DEFAULT); + spdlog::info("event loop ended"); return 0; }