Commit Graph

328 Commits

Author SHA1 Message Date
Oliver Kowalke
f6c7ab7826 rename (un)bounded_queue -> (un)bounded_channel + use allocator 2014-12-28 21:30:14 +01:00
Oliver Kowalke
2f19be6d67 use C++11 2014-12-27 19:07:42 +01:00
Oliver Kowalke
7fb469cd10 some fixes 2014-09-24 19:18:44 +02:00
Oliver Kowalke
244c539a2e Add some explanatory material in scheduling.qbk about coding your own
scheduler and setting it with set_scheduling_algorithm(). Document
sched_algorithm interface class.

Fix the example in condition_variables.qbk to explicitly unlock 'lk'
before
calling process_data().
2014-09-22 19:11:22 +02:00
Nat Goodspeed
6fb1b04789 Change some doc references from 'algorithm' to 'sched_algorithm'.
Add some explanatory material in scheduling.qbk about coding your own
scheduler and setting it with set_scheduling_algorithm(). Document
sched_algorithm interface class.

Fix the example in condition_variables.qbk to explicitly unlock 'lk' before
calling process_data().
2014-09-22 10:00:34 -04:00
Oliver Kowalke
a21b18b856 update docu 2014-09-19 16:58:16 +02:00
Oliver Kowalke
8dc8dce605 docu update 2014-09-15 17:03:31 +02:00
Oliver Kowalke
184455bca4 remove html 2014-09-15 16:56:01 +02:00
Oliver Kowalke
bdab3735ed update docu 2014-09-12 16:58:07 +02:00
Oliver Kowalke
c161e095af docu update 2014-09-09 21:02:12 +02:00
Oliver Kowalke
c005bb2c8f doc update 2014-09-09 20:40:26 +02:00
Oliver Kowalke
ef7eff3d43 update docu 2014-09-07 10:51:33 +02:00
Oliver Kowalke
491012776f update docu 2014-09-05 17:55:49 +02:00
Oliver Kowalke
e48252837f accept any clock type for lock_until() etc. 2014-09-05 17:55:16 +02:00
Oliver Kowalke
32d4a056d0 update documentation 2014-08-20 17:37:47 +02:00
Oliver Kowalke
ccbda7c04a improve performance tests and docu 2014-07-31 18:04:25 +02:00
Oliver Kowalke
c58eb91807 consolidate performance tests 2014-07-26 10:18:27 +02:00
Oliver Kowalke
142dd2cd5b some doc corrections 2014-07-21 20:04:38 +02:00
Nat Goodspeed
bcaff62763 Update docs for barrier.hpp and bounded_queue.hpp.
Use std::size_t as argument type for barrier constructor.

Add bounded_queue::upper_bound(), lower_bound(), value_pop().

Make is_empty(), is_full() const.

Add TimePointType template param to push_wait_until(), pop_wait_until().
2014-07-16 17:25:10 -04:00
Oliver Kowalke
a2d3eba716 fix migrating a fiber between threads 2014-06-26 19:01:49 +02:00
Oliver Kowalke
d4199de28a update docu -> performance counters 2014-03-22 20:54:54 +01:00
Oliver Kowalke
5b6d77b6b5 renaming of fiber classes 2014-03-05 17:30:11 +01:00
Oliver Kowalke
7cf2cabc99 allow different stack-allocators 2014-02-26 19:40:28 +01:00
Oliver Kowalke
fc608cdaf7 use symmetric_coroutine<> (from coroutine branch develop) 2014-02-22 21:38:24 +01:00
Oliver Kowalke
2b37b33011 use asymmetric_coroutine<> from (coroutine branch develop) 2014-02-22 21:26:28 +01:00
Oliver Kowalke
f20cb844e5 documentation of performance 2014-02-22 20:02:38 +01:00
Mario Lang
d471d7133d Fix some typos. 2013-12-29 14:00:36 +01:00
Oliver Kowalke
40d469d346 let notifier for thread's initial context allocate by algoritm 2013-12-28 10:19:06 +01:00
Oliver Kowalke
aa6f0b1bce add a note to destructor of fiber in documentation 2013-12-16 17:33:17 +01:00
Oliver Kowalke
3b7ed1f45a changed template args for packaged_task in documentation 2013-12-15 08:31:58 +01:00
Oliver Kowalke
240a57a8ed fix signature template arg of packaged_task 2013-12-12 20:19:17 +01:00
Oliver Kowalke
7ea3a8968c html updated 2013-12-08 22:09:03 +01:00
Oliver Kowalke
909c8ed3fc some smalle fixes in documentation 2013-12-06 08:52:22 +01:00
Nat Goodspeed
8432f8b864 Update doc for set_scheduling_algorithm() for void return.
Add note to set_scheduling_algorithm() about caller's responsibility to
eventually destroy the passed scheduler object.
2013-12-04 13:26:30 -05:00
Nat Goodspeed
025a31d9e2 Add notes for algorithm::active() and get_main_id() methods.
This reflects my improved understanding of these methods based on our mail
conversation.
Also state explicitly that you are permitted to supply your own scheduler.
2013-12-04 09:51:27 -05:00
Nat Goodspeed
7eca9fb5fb Document set_scheduling_algorithm().
Add cross-references for that and for algorithm, round_robin and
round_robin_ws.
2013-12-03 22:41:25 -05:00
Oliver Kowalke
511b740ec2 default-scheduler allocated 2013-12-02 19:45:48 +01:00
Nat Goodspeed
d49383151e Review of recent queue documentation changes and scheduling doc. 2013-11-27 10:57:22 -05:00
Nat Goodspeed
bf5428c5d5 Remove extra line containing unmatched double ]]. 2013-11-25 12:01:33 -05:00
Oliver Kowalke
e1adfd666c add doc about scheduling 2013-11-24 17:29:06 +01:00
Oliver Kowalke
ddd4f8fff6 update docu 2013-11-21 17:49:08 +01:00
Nat Goodspeed
b0d09be850 Fix doc about fiber::operator safe_bool(): NOT same as joinable().
Looking at the implementation, it seems that operator safe_bool() and its
companion, operator!(), interrogate whether the referenced fiber has or has
not terminated. joinable() does not.
Add more joinable() cross-references, and cross-reference joinable(), operator
safe_bool() and operator!().
2013-11-18 22:15:49 -05:00
Nat Goodspeed
e436bc991d Add class_heading, member_heading et al. QuickBook templates and use for cross-referencing. 2013-11-08 18:30:11 -05:00
Nat Goodspeed
d7b4be06c7 Link this_fiber::thread_affinity() to fiber::thread_affinity().
Use [#named_anchor] QuickBook functionality rather than trying to predict the
normalized link for [heading Member function `thread_affinity( bool)`], which
looks like this:

fiber.fiber_mgmt.fiber.member_function__code__phrase_role__identifier__thread_affinity__phrase__phrase_role__special_____phrase___phrase_role__keyword__bool__phrase__phrase_role__special_____phrase___code_
2013-11-07 08:22:58 -05:00
Nat Goodspeed
7c7683ad41 Start adding internal cross-references to fiber documentation 2013-11-06 22:02:43 -05:00
Nat Goodspeed
32af998f3c Fix markup error in fiber::thread_affinity() Note. 2013-11-06 17:02:24 -05:00
Nat Goodspeed
d9c1272df6 Describe this_fiber::thread_affinity() in terms of fiber::thread_affinity().
Also mention that fiber::thread_affinity() is off by default.
2013-11-06 16:31:20 -05:00
Nat Goodspeed
938de04829 Document that bounded_queue constructor can in fact throw. 2013-11-06 16:28:56 -05:00
Nat Goodspeed
919a2993c2 Document new [un]bounded_queue API, plus a bit of guessing.
Change certain [un]bounded_queue method signatures to return queue_op_status.
Their previous signatures didn't provide any way to report a closed queue.
For Note: interruption point, document Throws: fiber_interrupted.
Write a few more words about bounded_queue's high water mark and low water
mark.
2013-11-06 15:53:34 -05:00
Nat Goodspeed
634fa3fe6a Document desired behavior for fiber::thread_affinity().
Also clarify Preconditions for fiber::priority().
2013-11-06 15:28:46 -05:00
Oliver Kowalke
64c372d059 add thread_affinity() to fiber's public interface 2013-11-02 16:56:24 +01:00
Oliver Kowalke
6bb976b4d3 fix queues 2013-11-02 14:15:05 +01:00
Oliver Kowalke
99cb841259 some corrections for noexcept specifier 2013-11-02 07:05:03 +01:00
Oliver Kowalke
fbc1e67c25 make fibers thread affin 2013-11-02 06:53:21 +01:00
Nat Goodspeed
2d79ce67a0 Clarify condition_variable vs. condition_variable_any.
Make condition_variable::wait_until() and wait_for() consistently use 'lk' instead of 'lt' because explanations only describe 'lk'.
Explain condition_variable::wait(), wait_until() and wait_for() Precondition.
Distinguish values returned by wait_until(), wait_for() overloads with and without predicates.
Update request for section concerning algorithm, set_scheduling_algorithm(), round_robin and round_robin_ws.
Clarify lifespan implications of fiber_group::add_fiber(). Explain requirement for a heap fiber object.
Experiment with cross-reference links to other Boost libraries.
2013-10-31 11:19:22 -04:00
Oliver Kowalke
f5d9d6536b docuemntation 2013-10-28 14:54:00 +01:00
Oliver Kowalke
5b236bc132 add description in code example 2013-10-26 10:31:23 +02:00
Oliver Kowalke
676b9616d6 documentation update (pass #3) 2013-10-26 10:18:35 +02:00
Oliver Kowalke
de58203ea8 docu 2013-10-14 19:31:43 +02:00
Oliver Kowalke
9b1a76ad2f docu 2013-10-14 19:24:43 +02:00
Oliver Kowalke
3a0d0309e5 docu 2013-10-14 17:24:37 +02:00
Oliver Kowalke
4f60f804ff docuemtnation update 2013-10-13 11:01:38 +02:00
Oliver Kowalke
045a40e5c6 docu 2013-09-29 10:42:29 +02:00
Oliver Kowalke
49cb3692bd docu 2013-09-26 20:27:25 +02:00
Oliver Kowalke
2d005f743e docu 2013-09-26 19:26:18 +02:00
Oliver Kowalke
5be0757ffd docu updated 2013-09-24 17:17:57 +02:00
Oliver Kowalke
13e52fdb23 docu 2013-09-16 17:33:15 +02:00
Oliver Kowalke
327104ffe3 dou 2013-09-15 19:38:29 +02:00
Oliver Kowalke
5e59b45c8d documentation 2013-09-13 17:38:36 +02:00
Oliver Kowalke
00ec9d32a3 update 2013-08-28 21:57:14 +02:00
Oliver Kowalke
2e000575e1 docu 2013-08-27 22:04:12 +02:00
Oliver Kowalke
1e838db13d docu 2013-08-25 19:52:15 +02:00
Oliver Kowalke
0cf8661315 documentation prepared 2013-08-21 17:30:00 +02:00
Oliver Kowalke
f06b6cf0d4 fix auto-link in config.hpp 2013-08-13 10:27:02 +02:00
Oliver Kowalke
31c764b7bc some code clean-up 2013-06-14 16:53:46 +02:00
Oliver Kowalke
b9542e1745 enhance docuemntation 2013-06-12 16:59:10 +02:00
Oliver Kowalke
645281a2ba add fiber::detach() 2012-12-13 17:59:13 +01:00
Oliver Kowalke
81e62e8962 changed directory structure as required by modularized-boost 2012-12-09 15:22:59 +01:00