Go to file
2014-07-29 20:27:04 +02:00
build add clang support for segmented stacks 2014-03-19 21:19:44 +01:00
doc add hint regarding to exception in docu 2014-07-29 20:27:04 +02:00
example re-enable await_emu 2014-04-11 18:05:55 +02:00
include/boost/coroutine fix MAP_ANONYMOUS for old Mac OS X 2014-07-09 19:44:41 +02:00
performance asyymmetric-coroutine with placement new 2014-03-30 11:01:14 +02:00
src some code cleanup related to segmented stacks 2014-03-19 21:17:45 +01:00
test asyymmetric-coroutine with placement new 2014-03-30 11:01:14 +02:00
.gitattributes Move top-level boost directory over to "devel" (temporarily) 2007-07-31 20:32:15 +00:00
.gitignore ignore html xml 2014-02-04 19:46:34 +01:00
index.html coroutine: initial commit 2012-11-24 19:42:09 +00:00
README.md sync with olk-repo 2013-12-04 22:26:09 +01:00

boost.coroutine

boost.coroutine provides templates for generalized subroutines which allow multiple entry points for suspending and resuming execution at certain locations. It preserves the local state of execution and allows re-entering subroutines more than once (useful if state must be kept across function calls).

Coroutines can be viewed as a language-level construct providing a special kind of control flow.

In contrast to threads, which are pre-emptive, coroutines switches are cooperative (programmer controls when a switch will happen). The kernel is not involved in the coroutine switches.