1
0
Fork 0
arangodb/3rdParty/boost/1.69.0/libs/coroutine
Jan fa7de56cf8
upgrade to boost 1.69.0 (#7910)
2019-01-09 17:17:33 +01:00
..
build upgrade to boost 1.69.0 (#7910) 2019-01-09 17:17:33 +01:00
example upgrade to boost 1.69.0 (#7910) 2019-01-09 17:17:33 +01:00
meta upgrade to boost 1.69.0 (#7910) 2019-01-09 17:17:33 +01:00
performance upgrade to boost 1.69.0 (#7910) 2019-01-09 17:17:33 +01:00
src upgrade to boost 1.69.0 (#7910) 2019-01-09 17:17:33 +01:00
test upgrade to boost 1.69.0 (#7910) 2019-01-09 17:17:33 +01:00
README.md upgrade to boost 1.69.0 (#7910) 2019-01-09 17:17:33 +01:00
index.html upgrade to boost 1.69.0 (#7910) 2019-01-09 17:17:33 +01:00

README.md

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.

Note that boost.coroutine is deprecated - boost.coroutine2 is its successor. If you are forced to use a pre-C++11 compiler you should still use boost.coroutine.