asyncoro
asyncoro is a Python framework for developing concurrent, distributed programs with asynchronous completions and coroutines. Asynchronous completions currently implemented in asyncoro are socket I/O operations (for non-blocking sockets), database cursors, sleep timers and locking primitives. The coroutines should use yield with these completions. Each yield statement gives control to asyncoro's scheduler, which interleaves executions of coroutines, similar to the way an operating system executes multiple processes. Programs developed with asyncoro have same logic and structure as programs with threads, except for a few syntactic changes. asyncoro supports socket I/O notification mechanisms epoll, kqueue, /dev/poll (and poll and select, where necessary), and Windows I/O Completion Ports (IOCP) for high performance and scalability, and SSL for security. Visit asyncoro project for more details.