The Portable Co-routine Library (PCL) implements the low level
functionality for co-routines in C. Co-routines are a very simple
cooperative multitasking environment where the switch from one task
to another is done explicitly by a function call. Co-routines are a
lot faster and require much less OS resources than processes or
threads.