I'd like to announce the first release of multitask, a module that allows Python programs to use generators to perform cooperative multitasking and asynchronous I/O. The basic structure of the module was inspired by the Trampoline class outlined in PEP 342, but it also includes support for I/O operations (using a common select() loop a la Twisted), communication between tasks via queues, sleeping, and timeouts on blocking operations.
For a bit more information and some basic examples, see:
The package source includes more comprehensive documentation (in the module's doc strings), as well as a few example scripts. It can be download from:
Questions, comments, and bug reports are welcome.
Cheers, Chris Stawarz