[Twisted-Python] Python multiprocessing and Twisted stopService - success story
dynamicgl at gmail.com
Sun Jan 22 04:47:22 EST 2012
Does it work for windows? I use ampoule instead to manage multiple
On Sat, Jan 21, 2012 at 12:09 AM, Nicolas Toper <ntoper at gmail.com> wrote:
> Hi Tom,
> 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
> Twisted-Python mailing list
> Twisted-Python at twistedmatrix.com
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Twisted-Python