summaryrefslogtreecommitdiff
path: root/src/apps/common/event_loop.h
diff options
context:
space:
mode:
authorBarnabás Pőcze <pobrn@protonmail.com>2025-01-14 16:42:31 +0100
committerBarnabás Pőcze <pobrn@protonmail.com>2025-02-27 17:29:28 +0100
commit234eb60546aa52d6bcae3f7a68c90d2e84b0b5f8 (patch)
treee0ac0a7aa5c6e94d8920f4ba95af3dead0a8f003 /src/apps/common/event_loop.h
parent54055dd0c21caac78fae4d983857cd67a587fa73 (diff)
apps: common: event_loop: Use single event source for deferred calls
Instead of calling `event_base_once()` every time a deferred call is added to the loop, create an event source at construction, and simply trigger that when a new deferred call is scheduled. Signed-off-by: Barnabás Pőcze <pobrn@protonmail.com> Reviewed-by: Jacopo Mondi <jacopo.mondi@ideasonboard.com>
Diffstat (limited to 'src/apps/common/event_loop.h')
-rw-r--r--src/apps/common/event_loop.h5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/apps/common/event_loop.h b/src/apps/common/event_loop.h
index 76007588..53b2c37d 100644
--- a/src/apps/common/event_loop.h
+++ b/src/apps/common/event_loop.h
@@ -65,11 +65,8 @@ private:
int exitCode_;
std::deque<std::function<void()>> calls_;
+ struct event *callsTrigger_ = nullptr;
std::list<std::unique_ptr<Event>> events_;
std::mutex lock_;
-
- static void dispatchCallback(evutil_socket_t fd, short flags,
- void *param);
- void dispatchCall();
};