On Aug 4, 2010, at 9:23 PM, Thomas Drake wrote:

> Hello,
> 
> I'm wondering if there is an established pattern for having an application 
> running in twistd shut itself down in the absence of a running service?
> 
> The idea is that if a service fails it calls self.stopService() and the 
> application shuts itself down somehow (rather than having the service call 
> reactor.stop). Ideally, I was hoping to do with without any specialized code 
> within my service, ie subclass from a ManagedService class or using 
> decorators.
> 
> I supposed it's possible to write a monitoring service that checks to ensure 
> my service is running, but I'd prefer a tighter coupling like having a 
> FatalException bubble up from the failed service to the application, 
> MultiService, or whatever *should* be calling reactor.stop().
> 
> Otherwise, if having service (eventually) stop the reactor is totally 
> antithetical to how things should work in a twistd plugin, then I guess I'll 
> need to rethink things.
> 
> Thanks,
> 
> Tad


Calling reactor.stop() is possibly the best that you're likely to do right now. 
 This is a known problem, and at least related to (if not the same as) 
<http://twistedmatrix.com/trac/ticket/718>.

_______________________________________________
Twisted-Python mailing list
Twisted-Python@twistedmatrix.com
http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python

Reply via email to