[zeromq-dev] behavior of zmq_term in 2.1.0

Pieter Hintjens ph at imatix.com
Fri Dec 3 08:24:19 CET 2010


Why would it even wait? The socket can catch the eterm flag at any point, it
is asynchronous between the two threads.

- Pieter
On 2 Dec 2010 20:50, "Martin Sustrik" <sustrik at 250bpm.com> wrote:
> Hi Pieter,
>
>> If sockets are not in a critical section, can zmq_term not perform
>> single-bit changes safely anyhow?
>
> Right. That would basically mean implementing a spin-lock in the user
> space. zmq_term thread spins while the socket thread is in a 0MQ call.
> When socket thread exits the function, the zmq_term thread sets a
> "terminated" flag and proceeds with flushing the messages from the socket.
>
> The question is whether such a spin-lock would be any faster when
> compared to standard mutex.
>
> Martin
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20101203/4d7b66a8/attachment.htm>


More information about the zeromq-dev mailing list