diff --git a/main.cpp b/main.cpp index 39f7c4a..0aabf45 100644 --- a/main.cpp +++ b/main.cpp @@ -7,16 +7,20 @@ void on_signal(uv_signal_t *h, int signum) { uv_stop(uv_default_loop()); } +void create_signal_handles(uv_loop_t *loop, uv_signal_t handles[2]) { + uv_signal_init(loop, handles); + uv_signal_start(handles, on_signal, SIGINT); + uv_signal_init(loop, handles + 1); + uv_signal_start(handles + 1, on_signal, SIGTERM); +} + int main() { uv_loop_t *loop = uv_default_loop(); 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); + create_signal_handles(loop, signalHandles); uv_run(loop, UV_RUN_DEFAULT); spdlog::info("event loop ended"); return 0; -} +} \ No newline at end of file