Re: [zeromq-dev] zmq_term() blocks in 2.1

2011-01-13 Thread chris
Martin Sustrik 250bpm.com> writes: > > Hi Chris, > > > Not strictly relevant to this thread, but FYI, the erlang bindings > > implementation at http://github.com/csrl/erlzmq supports this non-blocking > > behavior. If any sockets are still open in the context, the zmq_term() wrapper > > return

Re: [zeromq-dev] zmq_term() blocks in 2.1

2011-01-13 Thread Martin Sustrik
Hi Chris, > Not strictly relevant to this thread, but FYI, the erlang bindings > implementation at http://github.com/csrl/erlzmq supports this non-blocking > behavior. If any sockets are still open in the context, the zmq_term() > wrapper > returns EAGAIN and all sockets return ETERM. > > It was

Re: [zeromq-dev] zmq_term() blocks in 2.1

2011-01-12 Thread chris
David Kantowitz gmail.com> writes: > Thanks for pointing me back to the older discussions.  I read through some of > emails and I think what I want is somewhat simpler then the issues discussed. > I don't care if messages are fully flushed at the time zmq_term() returns, I > just don't want zmq

Re: [zeromq-dev] zmq_term() blocks in 2.1

2011-01-11 Thread Martin Sustrik
Hi David, > Thanks for the reply. My difficulty is specifically these lines in > ctx::terminate(): > if (no_sockets_notify) > > no_sockets_sync.wait (); Yes. zmq_term() should be able to return EINTR and allow restart. To be done. > I'm using 0MQ with Matlab and the Matlab interactive loop is

Re: [zeromq-dev] zmq_term() blocks in 2.1

2011-01-11 Thread David Kantowitz
Martin, Thanks for the reply. My difficulty is specifically these lines in ctx::terminate(): if (no_sockets_notify) no_sockets_sync.wait (); I'm using 0MQ with Matlab and the Matlab interactive loop is basically single threaded, so function call that blocks will freeze the entire

Re: [zeromq-dev] zmq_term() blocks in 2.1

2011-01-10 Thread Martin Sustrik
David, > Thanks for pointing me back to the older discussions. I read through > some of emails and I think what I want is somewhat simpler then the > issues discussed. I don't care if messages are fully flushed at the > time zmq_term() returns, I just don't want zmq_term() to hang my main > thre

Re: [zeromq-dev] zmq_term() blocks in 2.1

2011-01-10 Thread David Kantowitz
> > > Date: Mon, 10 Jan 2011 18:36:19 -0600 > From: Chuck Remes > Subject: Re: [zeromq-dev] zmq_term() blocks in 2.1 > To: ZeroMQ development list > Message-ID: <5aaad829-f8ed-447d-9d88-568c8198c...@mac.com> > Content-Type: text/plain; CHARSET=US-ASCII > >

Re: [zeromq-dev] zmq_term() blocks in 2.1

2011-01-10 Thread Chuck Remes
On Jan 10, 2011, at 6:26 PM, David Kantowitz wrote: > Hello, > > In v2.1 zmq_term() will block if there are any open sockets -- in previous > versions of ZMQ zmq_term() was non-blocking. > > For my application this causes problems, so I've changed my copy of > ctx::terminate() to be non-blocki

[zeromq-dev] zmq_term() blocks in 2.1

2011-01-10 Thread David Kantowitz
Hello, In v2.1 zmq_term() will block if there are any open sockets -- in previous versions of ZMQ zmq_term() was non-blocking. For my application this causes problems, so I've changed my copy of ctx::terminate() to be non-blocking. I issue all the stop() calls and return EAGAIN if there are sock