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