switch to coroutine execution model

This commit is contained in:
Martin Michelsen
2025-04-30 21:43:06 -07:00
parent f65b1f1c14
commit cc99050964
160 changed files with 269127 additions and 227736 deletions
+3 -6
View File
@@ -1,11 +1,10 @@
#pragma once
#include <asio.hpp>
#include <memory>
#include <string>
#include <thread>
#include <event2/event.h>
#include "ServerState.hh"
class SignalWatcher : public std::enable_shared_from_this<SignalWatcher> {
@@ -20,9 +19,7 @@ public:
protected:
phosg::PrefixedLogger log;
std::shared_ptr<ServerState> state;
std::unique_ptr<struct event, void (*)(struct event*)> sigusr1_event;
std::unique_ptr<struct event, void (*)(struct event*)> sigusr2_event;
asio::signal_set signals;
static void dispatch_on_signal(evutil_socket_t, short, void* ctx);
void on_signal(int signum);
asio::awaitable<void> signal_handler_task();
};