[zeromq-dev] event monitors and multiple io threads

Ben Gray ben at benjamg.com
Wed Jan 9 16:06:05 CET 2013


I have been adding more event monitoring into a fork of 3.2.2 for
auditing at where I work and so far I've been unable to find how the
socket::monitor_event calls are thread safe.

As far as I can tell they are called via the socket::event_* functions
from a number of different io_objects which can happily exist on
different io threads.
If someone could point me in the correct direction then I can make
sure my new events don't break anything important.

The particular example I was tracing through is a bound push socket
which selects, based on load, one io thread for the tcp_listener and
then a potentially different io thread for each stream_engine
generated from accepting incoming connections. Both of these objects
are appear to have the same socket pointer and call event methods when
things happen.

Regards,
Ben



More information about the zeromq-dev mailing list