[Python-Dev] generic async io (was: microthreading vs. async io) (original) (raw)

dustin at v.igoro.us dustin at v.igoro.us
Thu Feb 15 20:55:50 CET 2007


On Thu, Feb 15, 2007 at 07:46:59PM +0000, Nick Maclaren wrote:

dustin at v.igoro.us wrote: > > I think this discussion would be facilitated by teasing the first > bullet-point from the latter two: the first deals with async IO, while > the latter two deal with cooperative multitasking. > > It's easy to write a single package that does both, but it's much harder > to write two fairly generic packages with a clean API between them, > given the varied platform support for async IO and the varied syntax and > structures (continuations vs. microthreads, in my terminology) for > multitasking. Yet I think that division is exactly what's needed.

The 'threading' approach to asynchronous I/O was found to be a BAD IDEA back in the 1970s, was abandoned in favour of separating asynchronous I/O from threading, and God alone knows why it was reinvented - except that most of the people with prior experience had died or retired :-(

Knowing the history of something like this is very helpful, but I'm not sure what you mean by this first paragraph. I think I'm most unclear about the meaning of "The 'threading' approach to asynchronous I/O"? Its opposite ("separating asynchronous I/O from threading") doesn't illuminate it much more. Could you elaborate?

Dustin



More information about the Python-Dev mailing list