Re: proposal: defer installing SIGCHLD

2012-05-25 Thread Marc Lehmann
On Thu, May 24, 2012 at 07:40:27PM +0400, Denis Bilenko wrote: > > behavious is deterministic right now - when you want to do your own signal > > handling, you e.g. block/ev_default_loop/restore/unblock, and that is much > > harder (if possible at all) to do otherwise. > > It's not much harder i

Re: proposal: defer installing SIGCHLD

2012-05-24 Thread Denis Bilenko
On Thu, May 24, 2012 at 6:25 AM, Marc Lehmann wrote: > The real reason why it breaks existing apps is another one though: the > behavious is deterministic right now - when you want to do your own signal > handling, you e.g. block/ev_default_loop/restore/unblock, and that is much > harder (if possi

Re: proposal: defer installing SIGCHLD

2012-05-23 Thread Marc Lehmann
On Wed, May 23, 2012 at 11:09:26PM +0200, Zsbán Ambrus wrote: > > That breaks existing applications, so, no. > > The problem is what happens if you want to use a child watcher to wait > on a child process that exits before you have started any child > watcher, right? That's the reason that some

Re: proposal: defer installing SIGCHLD

2012-05-23 Thread Zsbán Ambrus
On 5/23/12, Marc Lehmann wrote: > On Tue, May 22, 2012 at 01:21:35PM +0400, Denis Bilenko > wrote: >> The patch below defers installing SIGCHLD until the first child >> watcher is started. Thus, if an application does not use child >> watchers, libev never installs a SIGCHLD handler. > > That bre

Re: proposal: defer installing SIGCHLD

2012-05-22 Thread Marc Lehmann
On Tue, May 22, 2012 at 01:21:35PM +0400, Denis Bilenko wrote: > The patch below defers installing SIGCHLD until the first child > watcher is started. Thus, if an application does not use child > watchers, libev never installs a SIGCHLD handler. That breaks existing applications, so, no. > I kn

Re: proposal: defer installing SIGCHLD

2012-05-22 Thread Denis Bilenko
On Tue, May 22, 2012 at 4:49 PM, Zsbán Ambrus wrote: > On Tue, May 22, 2012 at 11:21 AM, Denis Bilenko > wrote: >> The patch below defers installing SIGCHLD until the first child >> watcher is started. Thus, if an application does not use child >> watchers, libev never installs a SIGCHLD handler

Re: proposal: defer installing SIGCHLD

2012-05-22 Thread Zsbán Ambrus
On Tue, May 22, 2012 at 11:21 AM, Denis Bilenko wrote: > The patch below defers installing SIGCHLD until the first child > watcher is started. Thus, if an application does not use child > watchers, libev never installs a SIGCHLD handler. Couldn't you instead compile with EV_MULTIPLICITY and use a

proposal: defer installing SIGCHLD

2012-05-22 Thread Denis Bilenko
Hi Marc, The patch below defers installing SIGCHLD until the first child watcher is started. Thus, if an application does not use child watchers, libev never installs a SIGCHLD handler. The problem I'm solving with it is this: In gevent 0.x we used libevent which does not reap children. There we