-
Notifications
You must be signed in to change notification settings - Fork 18
Other coroutine libraries
Xingbo Wu edited this page Feb 2, 2019
·
32 revisions
Assorted coroutine, fibers and green thread libraries and resources
- Low Level
- libcoro -- very low level, just does the coroutine switching, cross-platform
- fcontext -- x86_64 only
- Cthreads -- Very efficient, x86_64 and x86_32 only
- libcoroutine -- A different libcoroutine, with variadic function calls
- Coroutines
- libconcurrent & libconcurrent homepage
- Portable Coroutine Library (PCL)
- libconcurrency
- libcoroutine
- libco
- libaco -- A blazing fast and lightweight C asymmetric coroutine library (also with a detailed math proof).
- Fibers/Green-Threads
- libtask
- State Threads
- GNU Pth
- RIBS -- Robust Infrastructure for Backend Systems
- threads.c (at the bottom of the page)
- Protothreads
- libfiber
- libevfibers -- based on libcoro and libev
- lthread
- fiber-framework
- rinoo
- cgreenlet
- millc -- Preprocessor that adds GoLang-like syntactic sugar to writing of user-space-threads
- Continuation Passing C - language based on C with tree transformation approach.
- qthreads - lightweight locality-aware user-level threading runtime with multiple green-thread schedulers, including an M:N one with work stealing
- Revisiting Coroutines by Ana Lucia de Moura and Roberto Ierusalimschy -- an expansive discussion of different coroutines and their classification and uses
- Coroutine (Wikipedia)
- Fiber (Wikipedia)
- Green Threads (Wikipedia)
- "minimal user-level thread package"
- Coroutines in C by Simon Tatham
- Coroutines in C Redux
- A Minimal User-Level Thread Package by Douglas W. Jones
- Cooperative Task Management -- A 2002 USENIX paper from Microsoft that describes the software engineering advantages and disadvantages of different concurrency models in great detail.