Dan Stromberg wrote: > On Wed, Jul 18, 2012 at 3:32 AM, <exar...@twistedmatrix.com> wrote: > > > > I don't think anything in the thread suggested that this approach will > > circumvent a time.sleep(10) call. > > I'm not sure where you're getting this circumvention issue from.
At this point I'm not sure what the problem you're trying to solve is. To look at this from another direction… here's the built-in facilities in Twisted for debugging what's happening with Deferreds: - Deferred's __str__ and __repr__ summarises the key state (i.e. has this been fired, is this waiting on another Deferred). - unhandled errors of GC'd Deferreds triggers an “Unhandled error” log message, to let you know that your code is probably missing something it should act on. Due to the nature of GC this is a best effort feature, there's no guarantee it will fire reliably or at all. - you can setDebugging(True) to have Twisted capture more information to include in the above log message: the traceback for what created the Deferred, and the traceback that initially called it. This is very helpful for helping you pinpoint which parts of your code are failing to add an errback. - as a bonus, because this is Python, you can abuse the private variables used to implement the previous points for your own ad hoc debugging, if you are ok with the fact that they are undocumented and unsupported APIs. And that's basically it. (If I've forgotten something I'm sure someone will reply to remind me.) It sounds like you're looking for something else, but I'm not sure quite what. Something roughly along the lines of “what are all the live Deferreds in my process?” maybe? -Andrew. _______________________________________________ Twisted-Python mailing list Twisted-Python@twistedmatrix.com http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python