Ok, I will work on an api-based version soon. Depending on whether I need
to write zmq interprocess communication this week, it might end up being
less important to merge our branches :)

-Dan (via mobile)
On Oct 22, 2013 11:36 PM, "Ask Solem Hoel" <notifications@github.com> wrote:

> In celery/concurrency/processes.py:
>
> > @@ -173,7 +173,10 @@ def on_loop_start(self, pid):
> >          # to accept work, this will tell the parent that the inqueue fd
> >          # is writable.
> >          self.outq.put((WORKER_UP, (pid, )))
> > -
> > +    def on_loop_stop(self, pid, exitcode):
> > +        code = "FAIL" if exitcode is None else "OK"
> > +        debug("   Child pid %i exited with code \"%s\".",pid,code)
> > +        signals.worker_process_shutdown.send(sender=None)
>
> Celery related code should not be called by this method as it should be
> decoupled from Celery. You need to find a way to support this by exposing
> it in the API.
> E.g. Worker(on_shutdown=signals.worker_process_shutdown.send)
>
> —
> Reply to this email directly or view it on GitHub<https://github.com/celery/celery/pull/1586/files#r7127484>
> .
>