[Python-Dev] Active Objects in Python (original) (raw)
Bruce Eckel BruceEckel-Python3234 at mailblocks.com
Wed Sep 28 04:38:11 CEST 2005
- Previous message: [Python-Dev] Active Objects in Python
- Next message: [Python-Dev] Active Objects in Python
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Oops. I forgot to add that to the list. Yes, in the working example of Active Objects that I've written in Java J2SE5, when you send a message to an active object, you get back a Future, which I suspect would be the same as your Deferred.
Tuesday, September 27, 2005, 7:41:27 PM, Christopher Armstrong wrote:
On 9/28/05, Greg Ewing <greg.ewing at canterbury.ac.nz> wrote:
Nick Coghlan wrote:
> PEP 342's yield expressions can probably be used to help address that problem, > though: > > class SomeAO(ActiveObject): > def processSomeMessage(self): > msg = yield > # Do something with the message > nextmsg = yield makeSomeBlockingCall(self) > # Do something with the next message I don't see how that helps, since makeSomeBlockingCall() is evaluated (and therefore blocks) before the yield happens.
Sounds like makeSomeBlockingCall is just misnamed (probably depending who you ask).
I wrote a small library recently that wraps Twisted's Deferreds and asynchronous Failure objects such that you can do stuff like
try: x = yield remoteObject.getSomething() except Foo: print "Oh no!"
This is just a 2.5-ification of defgen, which is at twisted.internet.defer.{deferredGenerator,waitForDeferred}. So anyway, if your actor messages always return Deferreds, then this works quite nicely.
-- Twisted | Christopher Armstrong: International Man of Twistery Radix | -- http://radix.twistedmatrix.com | Release Manager, Twisted Project \\V/// | -- http://twistedmatrix.com |o O| | w----v----w-+
Python-Dev mailing list Python-Dev at python.org http://mail.python.org/mailman/listinfo/python-dev Unsubscribe: http://mail.python.org/mailman/options/python-dev/bruceeckel-python3234%40mailblocks.com
Bruce Eckel http://www.BruceEckel.com mailto:BruceEckel-Python3234 at mailblocks.com Contains electronic books: "Thinking in Java 3e" & "Thinking in C++ 2e" Web log: http://www.artima.com/weblogs/index.jsp?blogger=beckel Subscribe to my newsletter: http://www.mindview.net/Newsletter My schedule can be found at: http://www.mindview.net/Calendar
- Previous message: [Python-Dev] Active Objects in Python
- Next message: [Python-Dev] Active Objects in Python
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]