From: Guido van Rossum <gu...@python.org>
Date: Tue, 23 Oct 2012 07:54:46 -0700
Local: Tues, Oct 23 2012 10:54 am
Subject: Re: [Python-ideas] yield from multiple iterables (was Re: The async API of the future: yield-from)
On Tue, Oct 23, 2012 at 12:34 AM, Jim Jewett <jimjjew...@gmail.com> wrote:
I think part of my point is that we can package all this up in a way
> On 10/21/12, Guido van Rossum <gu...@python.org> wrote: >> On Sun, Oct 21, 2012 at 1:07 PM, Steve Dower <Steve.Do...@microsoft.com> >> wrote: >>> It has synchronisation which is _aware_ of threads, but it never creates,
>> I don't see it that way. Any time you acquire a lock, you may be
> That (with or without rescheduling this thread to actually process the
that is a lot less scary than Twisted's reputation. And remember, there are many other frameworks that use similar machinery. There's Tornado, Monocle (which runs on top of Tornado *or* Twisted), and of course the stdlib's asyncore, which is antiquated but still much used -- AFAIL Zope is still built around it. > A general API
Here I have some real world relevant experience: NDB, App Engine's new
> should have a straightforward way to wait for a result; even > explicitly calling wait() may be too much to ask if you want to keep > assuming that other events will cooperate. Datastore API (which I wrote). It is async under the hood (yield + its own flavor of Futures), and users who want the most performance from their app are encouraged to use the async APIs directly -- but users who don't care can ignore their existence completely. There are thousands of users, and I've seen people explain the async stuff to each other on StackOverflow, so I think it is quite accessible. >> Agreed. I don't see much use for the cancellation stuff and all the
Agreed. And it's not hard to implement a custom cancellation mechanism either.
>> extra complexity that adds to the interface. > wait_for_any may well be launching different strategies to solve the
-- You must Sign in before you can post messages.
To post a message you must first join this group.
Please update your nickname on the subscription settings page before posting.
You do not have the permission required to post.
| ||||||||||||||