diff options
author | Martin Sustrik <sustrik@250bpm.com> | 2011-02-09 22:23:21 +0100 |
---|---|---|
committer | Martin Sustrik <sustrik@250bpm.com> | 2011-02-09 22:23:21 +0100 |
commit | 5b82b1ba30d136655c72f116ee2e372ded453952 (patch) | |
tree | 53ea4a7a075ff52fe75af64b908a04cf9001d39b /src/reaper.hpp | |
parent | 80ac398bba928fa7f245d2e107071677a13185cf (diff) |
Reaper thread waits for commands rather them retrieving them periodically
Signed-off-by: Martin Sustrik <sustrik@250bpm.com>
Diffstat (limited to 'src/reaper.hpp')
-rw-r--r-- | src/reaper.hpp | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/src/reaper.hpp b/src/reaper.hpp index 8598cd9..6536b74 100644 --- a/src/reaper.hpp +++ b/src/reaper.hpp @@ -47,15 +47,10 @@ namespace zmq private: - void reap (); - // Command handlers. void process_stop (); void process_reap (class socket_base_t *socket_); - - // List of all sockets being terminated. - typedef std::vector <class socket_base_t*> sockets_t; - sockets_t sockets; + void process_reaped (); // Reaper thread accesses incoming commands via this mailbox. mailbox_t mailbox; @@ -66,12 +61,12 @@ namespace zmq // I/O multiplexing is performed using a poller object. poller_t *poller; + // Number of sockets being reaped at the moment. + int sockets; + // If true, we were already asked to terminate. bool terminating; - // If true, timer till next reaping is running. - bool has_timer; - reaper_t (const reaper_t&); const reaper_t &operator = (const reaper_t&); }; |