Use ZMQ_POLLIN instead of POLLIN and it will work. -Pieter
On Sat, Nov 10, 2012 at 11:14 PM, Doron Somech <[email protected]> wrote: > I may get it wrong, but this is the code i'm using the poll is blocked > forever: > > int main (int argc, char *argv []) > { > void* ctx = zmq_ctx_new(); > > void *p1 = zmq_socket(ctx, ZMQ_PAIR); > void *p2 = zmq_socket(ctx, ZMQ_PAIR); > > zmq_bind(p1, "inproc://d.inproc"); > zmq_connect(p2, "inproc://d.inproc"); > > char arr[1]; > arr[0] = 1; > > zmq_send(p1, arr, 1, 0); > > zmq_pollitem_t item; > item.socket = p2; > item.events = POLLIN; > > int result = zmq_poll(&item, 1, -1); > > return 0; > } > > On Sat, Nov 10, 2012 at 4:07 PM, Pieter Hintjens <[email protected]> wrote: >> >> Poll on PAIR sockets definitely works, we use this all the time. >> >> Can you make a minimal test case that shows the problem happening? It >> could be that you've simply made an error in how you're calling >> zmq_poll. >> >> -Pieter >> >> >> On Sat, Nov 10, 2012 at 9:43 PM, Doron Somech <[email protected]> wrote: >> > Hi, >> > >> > I'm trying to build a reactor which will also listen to the monitor >> > socket. >> > the problem is that poll on a pair socket is not working. >> > >> > checking the code i found out that the send_activate_read is never >> > called on >> > a pair socket (which is causing the signaling on the socket the poll is >> > actually listen on). >> > >> > I don't want to create a thread for each socket i'm going to monitor, >> > other >> > alternative is to configure the socket with receive timeout of zero and >> > use >> > don't wait option. >> > >> > I'm not sure that the second solution is a good one, because I want one >> > thread to listen to both regular sockets and monitor sockets, >> > with that solution i have to do zmq_poll (with small timeout) and after >> > the >> > poll call the recv for all the monitoring sockets. >> > >> > Any suggestions? >> > >> > Thanks, >> > >> > Doron >> > >> > _______________________________________________ >> > zeromq-dev mailing list >> > [email protected] >> > http://lists.zeromq.org/mailman/listinfo/zeromq-dev >> > >> _______________________________________________ >> zeromq-dev mailing list >> [email protected] >> http://lists.zeromq.org/mailman/listinfo/zeromq-dev > > > > _______________________________________________ > zeromq-dev mailing list > [email protected] > http://lists.zeromq.org/mailman/listinfo/zeromq-dev > _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
