[Twisted-Python] deferredGenerator or inlineCallbacks
Justin Warren
daedalus at eigenmagic.com
Mon Jan 14 20:34:17 EST 2008
Hi folks,
I think I have a fundamental misunderstanding of how deferredGenerator
(or inlineCallbacks for Python2.5) work.
What I *want* to do, is something like this:
aValue = MyObject.get_a_value()
where the contents of get_a_value() do some asynchronous operations
which finally result in some kind of actual value being returned (a
string, and integer, whatever) rather than a Deferred.
I have some old blocking code that I want to migrate to use some
asynchronous, twisted code that does the same thing, but I'd prefer to
not have to write a bunch of:
def get_a_value_success(retval):
...
def get_a_value_failed(retval):
...
d = MyObject.get_a_value()
d.addCallback(get_a_value_success)
d.addErrback(get_a_value_failed)
code.
Is this even possible, or am I completely misunderstanding what's going
on here? I can get the code to do the @defer.deferredGenerator,
waitForDeferred(), wfd.getResult() dance.. but how do I actually return
a value from my function after doing wfd.getResult() ?
--
Justin Warren <daedalus at eigenmagic.com>
More information about the Twisted-Python
mailing list