2
0
mirror of https://github.com/boostorg/fiber.git synced 2026-02-12 12:02:54 +00:00
Commit Graph

181 Commits

Author SHA1 Message Date
Oliver Kowalke
d15ea79bfa Merge pull request #58 from nat-goodspeed/develop
Start of proofreading pass
2015-09-01 07:59:02 +02:00
Oliver Kowalke
e91bbf1274 doucmentation: fix references to files in performance.qbk 2015-09-01 06:39:50 +02:00
Nat Goodspeed
c6ccbbc112 Add footnote about yield() being insufficient to interrupt a detached fiber. 2015-08-31 20:30:57 -04:00
Nat Goodspeed
f5c153bf2c Merge branch 'develop' of github.com:olk/boost-fiber into develop 2015-08-31 20:12:13 -04:00
Nat Goodspeed
f3d80ef589 Update some remarks about Asio; add cross-references. 2015-08-31 20:11:05 -04:00
Oliver Kowalke
6a1230f02f fix formating in documentation 2015-08-31 21:32:12 +02:00
Nat Goodspeed
d8f82dfb09 Fix table descriptions, appending source-file links below each.
Too bad we can't embed such links within a table description.
2015-08-31 12:41:50 -04:00
Nat Goodspeed
b81a65c566 Add note about interrupting detached fiber at main-fiber shutdown. 2015-08-31 12:34:38 -04:00
Nat Goodspeed
58fa3add01 Change set_scheduling_algorithm() to use_scheduling_algorithm<>(). 2015-08-31 12:21:53 -04:00
Nat Goodspeed
23bcafa0be Add note about barrier reset behavior. 2015-08-31 12:03:52 -04:00
Nat Goodspeed
62d7060475 Discuss destroying future before corresponding promise::set_value(). 2015-08-31 11:44:17 -04:00
Nat Goodspeed
b491696b54 Clarify that neither ~future() nor ~shared_future() blocks. 2015-08-31 11:37:42 -04:00
Nat Goodspeed
e3bb470376 Fill in section on adapting to nonblocking I/O. 2015-08-31 11:29:26 -04:00
Nat Goodspeed
2ed2bb4827 Add when_all_members() description. 2015-08-31 10:38:40 -04:00
Nat Goodspeed
f15fccb4b9 Add wait_all_collect_errors() description. 2015-08-31 10:08:31 -04:00
Nat Goodspeed
cc8acb1fee Add wait_all_until_error(), wait_all_until_error_source() description. 2015-08-31 10:00:38 -04:00
Nat Goodspeed
56191d5190 Add wait_all_values(), wait_all_values_source() description. 2015-08-31 08:15:06 -04:00
Nat Goodspeed
5cb215f741 Add wait_all_simple() description. 2015-08-30 20:49:45 -04:00
Nat Goodspeed
6d8821cf0b Add cross-references between when_any examples. 2015-08-30 20:12:22 -04:00
Nat Goodspeed
53127efe42 Add wait_first_value_het() description. 2015-08-30 19:56:40 -04:00
Nat Goodspeed
7e9213779e Break 'when_any' etc. into subsections.
This puts subsection entries into the table of contents.
2015-08-30 19:39:50 -04:00
Nat Goodspeed
ec251c3c02 Add wait_first_success() description. 2015-08-30 19:28:44 -04:00
Nat Goodspeed
bed11fe0a1 Add wait_first_outcome() description. 2015-08-30 18:42:50 -04:00
Nat Goodspeed
93a73835b8 Add [mdash] template and use it to replace --.
Also place an anchor concerning uncaught exceptions.
2015-08-30 18:36:10 -04:00
Nat Goodspeed
70b79515bf Correct phrasing for [xchannel_push_effects] template.
Affects wording for unbounded_channel::push(), bounded_channel::push().
2015-08-30 18:27:06 -04:00
Nat Goodspeed
4d1984e490 Add warning about tying lifespan of barrier to any waiting fiber. 2015-08-30 08:21:26 -04:00
Nat Goodspeed
455b160aad Add wait_first_value() description. 2015-08-29 21:34:18 -04:00
Nat Goodspeed
a8debb9201 Add first when_any passage (wait_first_simple())... work in progress. 2015-08-29 19:42:53 -04:00
Nat Goodspeed
8e21537c3e Recommend std::unique_lock instead of std::lock_guard for mutex.
The condition_variable examples spoke about std::lock_guard. But this doesn't
work in practice, as lock_guard has no unlock() method. Use unique_lock
instead, as test_condition.cpp does.
2015-08-25 12:56:53 -04:00
Oliver Kowalke
91555307e5 fix typo in documentation 2015-08-24 19:52:26 +02:00
Oliver Kowalke
de8feb7ff9 documentation: add link to boost.context for WinFiber support 2015-08-24 17:40:27 +02:00
Nat Goodspeed
1e3e2b8887 Add callbacks.qbk about interfacing Fiber with async callbacks.
This covers both generic callbacks (adapt_callbacks.cpp,
adapt_method_calls.cpp) and custom Asio completion tokens (yield.hpp,
promise_completion_token.hpp, detail/yield.hpp, detail/promise_handler.hpp).
Mark up the relevant source files to provide code snippets for callbacks.qbk.
2015-08-24 09:28:16 -04:00
Nat Goodspeed
99db8d50a8 Add section about integration with another main loop.
Asio integration may be a much larger topic, per email.
2015-08-19 06:18:08 -04:00
Nat Goodspeed
a2b18c51de Fix cross-references to other Boost libraries, per Paul Bristow.
As Paul points out, links of the form [@boost:/libs/something/index.html] (as
recommended by
http://www.boost.org/doc/libs/release/doc/html/quickbook/syntax/phrase.html#quickbook.syntax.phrase.links)
do not work when generating PDF, or even when locally generating just one
library's HTML documentation. He suggests linking explicitly to the relevant
boost.org URL. This is much more satisfying as the link can be tested.
2015-08-17 08:26:07 -04:00
Nat Goodspeed
42cfefa25f Fix [@path] links referencing .cpp files, per Paul Bristow. 2015-08-17 08:14:13 -04:00
Nat Goodspeed
fd9f16776a Flesh out Customization section with step-by-step directions.
Mark up examples/priority.cpp with code snippets for use in Customization.

Also clarify the effect of changing wait_interval().
2015-08-16 16:38:21 -04:00
Nat Goodspeed
95cc663e43 Correctly describe bounded_channel's behavior with lwm items.
I originally assumed that a blocked bounded_channel::push() would only unblock
once the number of items in the channel dropped _below_ lwm, and described it
that way. But in fact the push unblocks as soon as the number of items in the
channel drops as low as lwm. Update documentation accordingly.
2015-08-15 11:20:19 -04:00
Nat Goodspeed
7a7e10295d Track renamed rationale.qbk. Move it just after overview.qbk. 2015-08-14 11:22:13 -04:00
Nat Goodspeed
666ada61ec Review rationale.qbk. 2015-08-14 11:21:42 -04:00
Nat Goodspeed
e08611555b Rename rational.qbk to rationale.qbk. 2015-08-14 11:10:44 -04:00
Nat Goodspeed
7c7bb2a6d1 Consolidate performance tables.
Make separate columns for Fiber with default synchronization and Fiber
compiled with BOOST_FIBERS_NO_ATOMICS.

Attempt to link tables to corresponding source files. Attempt does not yet
appear successful.
2015-08-13 17:40:42 -04:00
Nat Goodspeed
d1df99fab1 A couple small edits to fls.qbk. 2015-08-13 15:23:40 -04:00
Nat Goodspeed
90ea0e30c4 Update packaged_task documentation.
Describe conventional usage of packaged_task.

Remove documentation for removed members operator safe_bool() and operator!().
2015-08-13 15:17:53 -04:00
Nat Goodspeed
4d36df2085 Proofread new discussion of fiber migration in Rationale. 2015-08-13 07:38:30 -04:00
Oliver Kowalke
5112f9b4b5 documentation: add notice why fiber migration is not supported
- interaction of TLS and coroutines/fibers
- NUMA architecutes and memory latency
2015-08-13 09:47:52 +02:00
Nat Goodspeed
a249f98f14 Reconcile promise.qbk with current implementation.
Add a cross-reference to shared state.

Remove doc for operator safe_bool() and operator!().

Clarify that set_exception() accepts specifically std::exception_ptr.
2015-08-12 20:35:05 -04:00
Nat Goodspeed
bd8e43ffa7 Merge branch 'develop' of github.com:olk/boost-fiber into develop 2015-08-12 16:35:08 -04:00
Nat Goodspeed
a0490413cd Further work on futures documentation.
Explain "shared state", and provide links to the explanation wherever it's
referenced.

We don't need the doc to enumerate 'R& future<R&>::get()' or 'void
future<void>::get()' separately from 'R future<R>::get()': all three
specializations are exactly as the reader expects, given the generic
template (unlike shared_future, where it's useful to spell them out).

Encapsulate some of the necessary redundancies between future and
shared_future documentation.

Explain the effect of promise::set_value() vs. promise::set_exception() on
each of [shared_]future::get(), get_exception_ptr(), wait(), wait_for() and
wait_until().

Add get_exception_ptr() method to shared_future exposition class.

Clarify distinction between shared_future move assignment vs. copy assignment.

Document that async() is now variadic. Document its StackAllocator overload,
and the effect of passing StackAllocator. Remove warning about launch policy
'deferred' since async() has no launch policy parameter.
2015-08-12 16:32:54 -04:00
Oliver Kowalke
2fcf006f90 fix docu 2015-08-12 19:40:09 +02:00
Nat Goodspeed
3d945b76bd Proofread today's documentation updates. 2015-08-08 11:03:47 -04:00