Go to file
2019-10-02 08:23:18 +02:00
doc docu: support for sanitizers 2019-10-02 08:22:54 +02:00
example Merge branch 'develop' 2017-05-26 22:14:08 +02:00
include/boost/coroutine2 include config of boost.context 2019-03-14 15:38:42 +01:00
meta Update libraries.json 2016-07-04 10:15:21 +02:00
performance call/cc supports ucontext_t and WinFiber 2017-05-26 11:42:28 +02:00
test unite-test: rename rule to 'native-impl' 2018-02-19 16:08:19 +01:00
.gitignore file .gitignore added 2015-01-22 22:55:01 +01:00
.travis.yml add control file for Travis CI 2017-12-20 15:34:05 +01:00
index.html initial import 2015-01-23 23:15:23 +01:00
README.md Update README.md 2018-02-05 08:10:22 +01:00

boost.coroutine2

boost.coroutine2 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.

boost.coroutine2 requires C++11! Note that boost.coroutine2 is the successor of the deprectated boost.coroutine.