An outsider's look at co-routines.
Presented by Peter Portante
Let's take an outsiders look at coroutines, the underlying concept used by greenlets. First we'll define what they are conceptually, and show some typical use cases. Then we'll take a look at a sampling of the implementations out there to see what they are actually doing to implement the concept. Finally, we'll show their pluses and minuses, and highlight some features of packages that use them.
- Define what a coroutine is
- Coroutine state not known to operating system
- Difference between a thread or process
- What state is required for tracking
- Show how coroutines are used
- gevent example
- concurrence example
- Review two implementations
- Python based co-routines using generators
- Differentiating features of packages that use them