mirror of
https://github.com/boostorg/fiber.git
synced 2026-02-19 02:12:24 +00:00
There's a blanket statement under 'Exceptions' that any exception not caught
by a running fiber will cause the program to terminate. fiber_interrupted is
an exception to this rule: that exception will terminate the fiber, but not
the whole program.
Explain that when a fiber running packaged_task is terminated by
fiber_interrupted, and another fiber calls future::get() on the future from
that packaged_task, fiber_interrupted will be rethrown regardless of
disable_interruption. This is implicit in existing material, but worth making
explicit.
Explicitly state that a thread's main fiber may call (e.g.) this_fiber::yield().
[un]bounded_channel::try_{push,pop}() are not interruption_points. Remove them
from the big list.
Semantics of operator<(fiber, fiber) depend solely on operator<(fiber::id,
fiber::id). Restating semantics of the latter function not needed.
Add a note clarifying the phrase "timeout-related exceptions."