[Twisted-Python] Advice sought on application evolution
Maarten ter Huurne
maarten at treewalker.org
Fri Mar 21 19:51:30 EDT 2008
On Friday 21 March 2008, Don Dwiggins wrote:
> @defer.inlineCallbacks
> def frobulate():
> step_1()
> step_2()
> step3Rslt = yield step_3_async()
> step_4()
> step_5()
> returnValue(result5)
>
> This is looking a lot better, but still the asynchrony of step_3 "shows
> through". (Again, I'm taking the viewpoint of someone trying to
> understand, maintain, and extend the functionality of the application,
> without having the asynchronous aspects "thrust in his face" more than
> absolutely necessary.)
>
> Of course, I can avoid all this by going to a threading or separate
> process solution, but I'd like to find out if I'm missing something
> before I make such a commitment.
If you're going to put the business logic in a separate process, you can use
Twisted in the central dispatch process and the programmer of a business
logic module does not even have to know.
If you're going to use a single process, then you will need some mechanism
to run business logic concurrently. No matter whether you choose threaded
or asynchronous, you will not be able to hide your choice from the business
logic programmer.
Bye,
Maarten
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 194 bytes
Desc: This is a digitally signed message part.
Url : http://twistedmatrix.com/pipermail/twisted-python/attachments/20080322/96f81dc4/attachment.pgp
More information about the Twisted-Python
mailing list