MaintainerUbuntu Developers <email@example.com>
Original MaintainerDebian Boost Team <firstname.lastname@example.org>
Installed Size111 kB
Dependslibboost-context1.62.0, libc6 (>= 2.4), libgcc1 (>= 1:3.0), libstdc++6 (>= 5.2)
Download Size25.6 kB
APT Manual Installedno
APT Sourceshttp://gb.archive.ubuntu.com/ubuntu zesty/universe amd64 Packages
This package forms part of the Boost C++ Libraries collection.
Boost.Fiber provides a framework for micro-/userland-threads (fibers)
scheduled cooperatively. The API contains classes and functions to manage
and synchronize fibers similarly to standard thread support library.
Each fiber has its own stack.
A fiber can save the current execution state, including all registers and
CPU flags, the instruction pointer, and the stack pointer and later
restore this state. The idea is to have multiple execution paths running
on a single thread using cooperative scheduling (versus threads, which are
preemptively scheduled). The running fiber decides explicitly when it
should yield to allow another fiber to run (context switching).
Boost.Fiber internally uses execution_context from Boost.Context; the
classes in this library manage, schedule and, when needed, synchronize
those execution contexts. A context switch between threads usually costs
thousands of CPU cycles on x86, compared to a fiber switch with less than
a hundred cycles. A fiber runs on a single thread at any point in time.