On Tue, Jan 14, 2014 at 12:34 PM, Lindley French <[email protected]> wrote:

> According to the docs, by default if a socket is closed, its send queue will
> still be sent. However, the behavior I'm seeing casts some doubt on this.

Where is this stated? Afaik the socket pipes (with messages) are
destroyed when the socket is destroyed, which will wait for the LINGER
time set on that socket, if there are messages waiting to be sent.

> One practical solution would be for the ROUTER to send back a "THANKS"
> message to the DEALER once it has everything, and not allow the socket to
> close until then. I would like to understand the subtleties of the
> implementation, though.

Indeed, that's what you'd want to do. Closing the socket will drop an
undefined messages in flight unless you set infinite linger, which can
lead to your application blocking.

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

Reply via email to