Which ops in 0MQ can block?

I know these can block:

send/recv/send_msg/recv_msg
close
term

can anything else block?  Most of the other ops would seem to
work async so don't block, right?

I have to get rid of all blocking ops. This means, for example, that
when the client says "send", it doesn't actually call zmq_send.

Instead, the request is wrapped up in a struct and put in a queue.
A separate pthread picks up the request and arranges to service
it with a non-blocking op and polling. This will actually dispatch
any I/O to zmq internals running in the zmq_init n pthreads.

The service request mechanism already exists in Felix, and is already
used for ordinary socket I/O. But stream I/O sucks. We need messages.. :)

--
john skaller
[email protected]




_______________________________________________
zeromq-dev mailing list
[email protected]
http://lists.zeromq.org/mailman/listinfo/zeromq-dev

Reply via email to