<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    Hi,<br>
    I'm trying to use a Dealer and a Router socket in combination with
    system select() instead of zmq_poll. We do use an event class in our
    projects that is based on select, so I tried to use this instead of
    zmq_poll();<br>
    <br>
    I wrote two test programs. Both use select() for READ events on the
    dealer socket and on the router socket, and I do check the
    ZMQ_EVENTS type if the event fires.<br>
    <br>
    One part (ZMQ Dealer) repeatedly sends a multipart message to the
    ZMQ Router test program.<br>
    The ZMQ Router gets READ event from select for the first message,
    and I read the full multipart message from the socket. But after
    that I don't get another event - until I stop the ZMQ Dealer test
    program, then I receive the SECOND sent message. <br>
    <br>
    I did read in the API that I do have to check the ZMQ_EVENTS after
    each zmq_send(), which I do after reading all parts of the multipart
    message.<br>
    <br>
    Do I need to check the ZMQ_EVENTS after every read? Even if I'm in
    the middle of receiving a multipart message?<br>
    <br>
    Do I need to do the same after each zmq_rcv() on the other side,
    even though I dont send anything there? <br>
    <br>
    <br>
    Copied Text from API:<br>
    <meta http-equiv="content-type" content="text/html;
      charset=ISO-8859-1">
    --<br>
    The returned file descriptor is also used internally by the zmq_send
    and zmq_recv functions. As the descriptor is edge triggered,
    applications <br>
    must update the state of ZMQ_EVENTS after each invocation of
    zmq_send or zmq_recv.To be more explicit: after calling zmq_send the
    socket may become readable (and vice versa) without triggering a
    read event on the file descriptor.<br>
    --<br>
    <br>
    What does  "applications must update the state of ZMQ_EVENTS after
    each invocation of zmq_send or zmq_recv" exactly mean? I'm using
    zmq_getsockopt - does this update the ZMQ_EVENTS ? <br>
    <br>
    I did a search in the mailing list, found some other mailings around
    the same topic, but I am still a little bit confused. Hope you can
    help me clear things up.<br>
    <br>
    Greetings, Tobias<br>
    <br>
  </body>
</html>