Ticket #5786 enhancement new
Add timeout implementation to Deferred, based on cancellation support
|Reported by:||itamar||Owned by:||kaizhang|
(diff, github, buildbot, log)
|Author:||itamar, kaizhang||Launchpad Bug:|
Description (last modified by itamar) (diff)
If you can cancel a Deferred, you should be able to time it out as well.
Some non-obvious points:
- It'd be useful to have an ability to distinguish between different timeouts (and cancellation) via the exception in the Failure.
- You may want to add multiple timeouts, and have them affect different levels of the callback chain. Consider a high-level request than opens a connection, then sends out a HTTP request. The code that creates the network connection might want to add a 60 second timeout on the connection attempt. Code calling the combo high-level API might want a 10 minute timeout, which applies to combination of network connection and HTTP request.
Note: See TracTickets for help on using tickets.