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

909 Commits

Author SHA1 Message Date
Oliver Kowalke
fbf412aae1 delete termianted fibers 2015-09-09 21:04:56 +02:00
Oliver Kowalke
4887028567 fix unit-test for bounded_channel 2015-09-09 19:48:55 +02:00
Oliver Kowalke
19c3df0862 ontext cleanup inf schedulerBitte geben Sie eine Commit-Beschreibung für Ihre Änderungen ein. Zeilen, 2015-09-09 19:36:30 +02:00
Oliver Kowalke
50791e3dd7 put main-context to yield-queue in ~scheduler() 2015-09-09 19:36:02 +02:00
Oliver Kowalke
9a59ee0a17 test explictly against nullptr 2015-09-09 19:35:33 +02:00
Oliver Kowalke
c89410dfd8 uses intrusive::list<> isntread hand-written queues 2015-09-09 19:22:54 +02:00
Oliver Kowalke
e4fc7e7736 restore simple example 2015-09-08 21:35:46 +02:00
Oliver Kowalke
291b9d7c17 small fixes 2015-09-08 21:33:20 +02:00
Oliver Kowalke
2cd1d39f12 fix clang compiler error regarding missing typename 2015-09-08 18:58:36 +02:00
Oliver Kowalke
6459b76075 do not use context::active() inside scheduler 2015-09-07 22:30:26 +02:00
Oliver Kowalke
2689e34be6 store pointer to main-context in scheduler 2015-09-07 22:29:57 +02:00
Oliver Kowalke
5854743a0a force segfault in work-sharing example 2015-09-07 22:24:20 +02:00
Oliver Kowalke
3200e419d2 increase amount of fibers and threads 2015-09-07 20:58:22 +02:00
Oliver Kowalke
18eb56d0f8 Merge pull request #65 from nat-goodspeed/develop
Update work_sharing to never share a thread's main fiber.
2015-09-07 20:55:26 +02:00
Nat Goodspeed
6cf8f4627f Update work_sharing to never share a thread's main fiber.
Instead, when the main fiber is passed to awakened(), stash it in a separate
slot and make pick_next() return it only when the shared queue is empty.

Update ready_fibers() to include a non-empty main_fiber slot.
2015-09-07 14:50:55 -04:00
Oliver Kowalke
0099b384c1 rename of flag and check function is_man_context() 2015-09-07 17:44:29 +02:00
Oliver Kowalke
d66575e2e6 fiber_manager renamed to scheduler 2015-09-07 17:35:37 +02:00
Oliver Kowalke
6499bb07e7 fiber_context renamed to context 2015-09-07 17:23:59 +02:00
Oliver Kowalke
7f97616aa2 Merge branch 'ws' into develop 2015-09-07 17:07:59 +02:00
Oliver Kowalke
4dc5aaab59 add example of work-sharing 2015-09-07 11:53:13 +02:00
Oliver Kowalke
7233f617d7 remove class scheduler - fiber_context has static TLS
- detail:.scheduler was removed
- fiber_context has a static thread-local pointer to the active
  fiber_context
- fiber_context has member to pointer of fiber_manager
- functions of fiber_manager are accessed only via fiber_context
- if fiber f is resumed, the fiber_manager of the current active fiber
  f' is assigned to f
  -> that is necessary if f was stolen form another thread
2015-09-07 11:50:01 +02:00
Oliver Kowalke
bc044fbed2 stuff 2015-09-06 21:36:06 +02:00
Oliver Kowalke
26ea3aa41c fix performace footnote issue 2015-09-05 15:29:42 +02:00
Oliver Kowalke
c4cfef7148 fix documentation issue related to footnote in table 2015-09-05 15:24:30 +02:00
Oliver Kowalke
2dbdd73e6e fix performance tests for std::thread 2015-09-05 15:21:43 +02:00
Oliver Kowalke
68cc0915b9 use passed overhead duration in performance tests 2015-09-05 14:00:58 +02:00
Oliver Kowalke
f8c97ffa16 initialize duration with zero 2015-09-05 13:49:29 +02:00
Oliver Kowalke
2e26806bb3 update performance tests and correct values in performance docu 2015-09-05 13:41:03 +02:00
Oliver Kowalke
ddf2115347 do not measure fiber creation together with join/yield/detach 2015-09-05 12:19:31 +02:00
Oliver Kowalke
66e7b59424 fix usage of std::chrono 2015-09-05 11:57:36 +02:00
Oliver Kowalke
0a296315f7 use steady_clock isntead of high_resolution_clock 2015-09-05 10:57:50 +02:00
Oliver Kowalke
4187c68f4e release mutex before signal condition-variable 2015-09-05 10:37:27 +02:00
Oliver Kowalke
983f2efb43 replace decltype(auto) -> void in lambda expression 2015-09-05 08:00:26 +02:00
Oliver Kowalke
af6eeb3380 fix header issue 2015-09-05 04:48:59 +02:00
Oliver Kowalke
0e8af4a29f fix future<>::wait_until() - use time_point< Clock, Duration > 2015-09-05 04:03:55 +02:00
Oliver Kowalke
c24c73dc11 documentation: hint for stack allocation in performance tests 2015-09-03 20:28:08 +02:00
Oliver Kowalke
4de24d4eec Merge pull request #64 from nat-goodspeed/develop
Finish proofreading pass.
2015-09-03 16:02:36 +02:00
Nat Goodspeed
d653cbdcc6 Finish proofreading pass.
Add a note to the condition_variable::wait_for(..., pred) overload.

fiber_specific_ptr::reset() has no default argument.

Remove mention of launch policy deferred, since no API accepts a launch
policy argument.

Copy construction or copy assignment of a shared_future leaves other.valid()
unchanged. It won't be 'true' unless it was 'true' before.

Mention that [shared_]future::get_exception_ptr() does not invalidate.

Note that 'blocks' and 'suspends' are used interchangeably.

Add some cross-references; add link to std::allocator_arg_t. Clarify the
cross-reference to the paragraph describing BOOST_FIBERS_NO_ATOMICS.

Reformat some overly-long source lines.
2015-09-03 09:16:09 -04:00
Nat Goodspeed
bcdb555821 Use std::shared_ptr and std::make_shared for promise_handler.
Publish promise_handler::promise_ptr and use it in asio_handler_invoke() for
consistency.
2015-09-03 08:47:25 -04:00
Nat Goodspeed
64b56e2200 Merge branch 'develop' of github.com:nat-goodspeed/boost-fiber into develop 2015-09-03 08:30:27 -04:00
Oliver Kowalke
b5f0a7e713 Merge pull request #63 from nat-goodspeed/develop
Reconcile condition_variable::wait_for(..., pred) with wait_until(..., pred).
2015-09-03 13:42:49 +02:00
Nat Goodspeed
c724ef65a3 Merge branch 'develop' of github.com:olk/boost-fiber into develop 2015-09-03 07:13:52 -04:00
Nat Goodspeed
f5cfa24f02 Merge branch 'develop' of http://github.com/olk/boost-fiber into develop 2015-09-03 07:13:10 -04:00
Nat Goodspeed
bd2eb2fe72 Reconcile condition_variable::wait_for(pred) with wait_until(pred). 2015-09-03 07:13:01 -04:00
Oliver Kowalke
07ac7b8f12 Merge pull request #62 from nat-goodspeed/develop
More proofreading tweaks
2015-09-03 07:58:36 +02:00
Nat Goodspeed
b465af2c39 Merge branch 'develop' of github.com:olk/boost-fiber into develop 2015-09-02 16:59:44 -04:00
Nat Goodspeed
abc1aa610e Proofreading pass continues through stack allocation. 2015-09-02 16:59:06 -04:00
Oliver Kowalke
be3d67a109 add end marker to example priority 2015-09-02 20:29:09 +02:00
Oliver Kowalke
86d9f20458 update performance tests 2015-09-02 20:09:22 +02:00
Oliver Kowalke
52c03cb5fd fix merge error 2015-09-02 19:56:26 +02:00