[Twisted-Python] Python multiprocessing and Twisted stopService - success story
ntoper at gmail.com
Fri Jan 20 11:09:09 EST 2012
How do you pass data between the parent and its children with
multiprocessing? It worked fine with Twisted in debug but never in prod :(
On Wed, Jan 18, 2012 at 6:39 PM, Tom Sheffler <tom.sheffler at gmail.com>wrote:
> We are using Py2.6's multiprocessing with Twisted and things are working
> nicely. I thought I'd pass on something that seems to work pretty well.
> Comments welcome.
> I am using multiprocessing to spawn long-running worker processes as
> children of Twisted. When Twisted is killed, I want the children to be
> unceremoniously killed as well. I looked into signal handlers, but
> creating a service that kills the child processes ended up being simpler
> and is working well with twistd daemonization.
> class MultiprocessingStopService(Service):
> def stopService(self):
> import multiprocessing
> for p in multiprocessing.active_children():
> and in my main service maker:
> s = MultiService()
> stopper = MultiprocessingStopService()
> Perhaps this will be helpful to someone.
> Twisted-Python mailing list
> Twisted-Python at twistedmatrix.com
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Twisted-Python