[Twisted-Python] sleeping in inlineCallbacks
phil at bubblehouse.org
Wed Oct 7 18:04:41 EDT 2009
On Oct 7, 2009, at 3:46 PM, Matt Perry wrote:
> On 7 Oct 2009, at 20:30, Paul Thomas wrote:
>> Is there any way to do something like "yield sleep(10)" inside an
>> @inlineCallbacks method?
>> I realise I can do this:
>> def sleep(seconds):
>> d = defer.Deferred()
>> reactor.callLater(seconds, d.callback, seconds)
>> return d
>> but I wondered if something like that is already in the libraries?
> reactor.callLater() is the best way to delay a certain function
> call. sleep() will block the entire program from running, which you
> probably don't want to do.
Not in this case; note he's referring to his custom sleep() function,
Paul's example will work just fine. Also, AFAIK there's no existing
twisted function to do replicate an asynchronous sleep() in this way.
More information about the Twisted-Python