Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>Whether the socket blocks or drops messages depends on the socket type as described in the <a href="http://zeromq.github.com/rbzmq/classes/ZMQ/Socket.html" rel="noreferrer">ZMQ::Socket documentation</a> (emphasis below is mine):</p> <blockquote> <p>ZMQ::HWM: Retrieve high water mark</p> <p>The ZMQ::HWM option shall retrieve the high water mark for the specified socket. The high water mark is a hard limit on the maximum number of outstanding messages 0MQ shall queue in memory for any single peer that the specified socket is communicating with.</p> <p><strong>If this limit has been reached the socket shall enter an exceptional state and depending on the socket type, 0MQ shall take appropriate action such as blocking or dropping sent messages.</strong> Refer to the individual socket descriptions in ZMQ::Socket for details on the exact action taken for each socket type.</p> <p>The default ZMQ::HWM value of zero means “no limit”.</p> </blockquote> <p>You can see if it will block or drop by looking through the documentation for the socket type for <code>ZMQ::HWM option action</code> which will either be <code>Block</code> or <code>Drop</code>.</p> <p>The action for <code>ZMQ::PUB</code> is <code>Drop</code>, so if it is not dropping you should check the HWM (High Water Mark) value and heed the warning that <strong>The default ZMQ::HWM value of zero means “no limit”,</strong> meaning that it will not enter an exceptional state until the system runs out of memory (at which point I don't know how it behaves).</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload