Open
Description
Basically, when user code is done running or blocked, instead of pausing the whole OS thread, we take a snapshot of the state of their code and then switch to running a different competitor's code.
See:
Matthias Mann's coroutine library
Kilim
Commons JavaFlow
For existing implementations of this concept.