Oliver Kowalke
1e751d7dbf
Nat Goodspeed:
...
- Change some doc references from 'algorithm' to 'sched_algorithm'.
- Initial cut at supporting arbitrary user-coded scheduler properties.
- Set fiber_properties::sched_algo_ every time through awakened().
- Define sched_algorithm methods on fiber_base*, not worker_fiber*.
- Simplify detail::fifo by making tail_ point to last link pointer.
- Reimplement waiting_queue::push() using pointer-to-pointer trick.
- Reimplement waiting_queue::move_to() using fiber_base** scan.
- Make bounded_queue::tail_ a ptr* to simplify appending new nodes.
- Make unbounded_queue::tail_ a ptr* to simplify linking new nodes.
- Remove thread_affinity flag and access methods.
- Re-add thread_affinity specific to workstealing_round_robin.
- Remove 'priority' for every fiber, and its support methods.
2014-11-12 20:03:12 +01:00
Oliver Kowalke
2d4a919faa
fix errors because of -pedantic
2014-08-23 14:20:01 +02:00
Oliver Kowalke
7ef6302f86
arbitrary clock::time_point conforming to chrono clock concept allowed
2014-07-08 17:41:59 +02:00
Oliver Kowalke
8df4a56564
use high_resolution_clock
2014-07-07 20:32:56 +02:00
Oliver Kowalke
a9f52d3007
add future<>::get_exception_ptr()
2014-06-29 14:13:33 +02:00
Oliver Kowalke
b936512136
remove mutex::scoped_lock by unique_lock< mutex >
2014-06-29 13:31:01 +02:00
Oliver Kowalke
cf90b40978
class fiber_group removed
2014-03-19 21:29:05 +01:00
Oliver Kowalke
9f7f74f662
use symmetric_coroutine<>::yield_type::operator()()
2014-03-15 19:16:13 +01:00
Oliver Kowalke
c197068680
reduce loop-count for multithreaded mutext-tests
2014-03-04 18:06:14 +01:00
Oliver Kowalke
67111d3e58
workstealing round-robin scheduler moved to examples
2014-03-04 18:01:42 +01:00
Oliver Kowalke
353cb27614
fix returning reference from temporary in sharred_state
2014-02-27 17:12:03 +01:00
Oliver Kowalke
a29d0be4d4
remove tests for unsupported features
2014-01-13 20:52:55 +01:00
Oliver Kowalke
2d082fb420
fix signature and behaviour of shared_future< R >::get()
2014-01-13 20:52:55 +01:00
Oliver Kowalke
bf08c5583d
change repate-count for futures-mt test
2013-12-29 22:16:48 +01:00
Oliver Kowalke
472992f61c
modified test_futures_mt
2013-12-29 21:36:05 +01:00
Oliver Kowalke
cda3b09042
add test for futures in mt-env
2013-12-29 11:33:31 +01:00
Oliver Kowalke
67ca128a8f
rename future_base to shared_state
2013-12-29 08:06:21 +01:00
Oliver Kowalke
5d27bb6454
add test waiting for future in other thread
2013-12-28 10:11:48 +01:00
Oliver Kowalke
dee8c72d2a
rename boost.strand to boost.fiber
2013-12-16 17:58:20 +01:00
Oliver Kowalke
511b740ec2
default-scheduler allocated
2013-12-02 19:45:48 +01:00
Oliver Kowalke
2e1fd67707
yield thief thread before work-stealing
2013-11-03 14:03:44 +01:00
Oliver Kowalke
436883ca33
add workstealing round_robin
2013-10-25 18:01:56 +02:00
Oliver Kowalke
5b6dc61b2f
update test_migration
2013-10-23 23:19:18 +02:00
Oliver Kowalke
c6718b1ee8
add fiber-migration between threads
2013-10-23 18:21:58 +02:00
Oliver Kowalke
8e04df986c
multithreaded condition_variable
2013-10-22 19:32:10 +02:00
Oliver Kowalke
3eafc0725f
thread-safe mutex'
2013-10-22 14:42:01 +02:00
Oliver Kowalke
ec8a11e60c
atomic fiber::state_
2013-10-17 19:21:26 +02:00
Oliver Kowalke
8d4987bf5c
reset() + future
2013-10-14 17:43:18 +02:00
Oliver Kowalke
decba3f33f
std::terminate() called if exception not catched
2013-10-01 19:44:06 +02:00
Oliver Kowalke
2a6ea310a1
fix linkingissue
2013-09-28 16:53:04 +02:00
Oliver Kowalke
84d2a50491
fix Jamfiles and multithreading
2013-09-28 10:24:47 +02:00
Oliver Kowalke
00ec9d32a3
update
2013-08-28 21:57:14 +02:00
Oliver Kowalke
d91578120f
fix libname
2013-08-18 22:14:10 +02:00
Oliver Kowalke
3485f551aa
add async()
2013-08-18 10:30:15 +02:00
Oliver Kowalke
4121cac318
add support for timed-operations (wait_for/wait_until)
2013-08-16 21:24:32 +02:00
Oliver Kowalke
77b8f1270c
add recursive_mutex
2013-06-25 17:32:40 +02:00
Oliver Kowalke
50441a8980
fiber_group added
2013-06-23 13:02:55 +02:00
Oliver Kowalke
ef762d4195
support for fiber_specific_pointer
2013-06-23 12:27:15 +02:00
Oliver Kowalke
3ba86d0e27
let scheduler::instance() return a pointer
2013-06-23 12:24:42 +02:00
Oliver Kowalke
b46af98e7a
use boost::allocator_arg_t in promise and packaged_task
2013-06-12 16:57:41 +02:00
Oliver Kowalke
6b5d58d2bb
some enhancments
2013-06-09 20:31:38 +02:00
Oliver Kowalke
9dfeb585d6
remove code for fiber migration
2013-03-19 17:44:43 +01:00
Oliver Kowalke
6cc399c598
new future impl: support for references as return type
2013-03-13 19:24:03 +01:00
Oliver Kowalke
3013006b0c
tests modified
2013-03-12 18:00:17 +01:00
Oliver Kowalke
126f06d44d
new future impl : packaged_task
2013-03-11 20:52:57 +01:00
Oliver Kowalke
5cb733ad7d
new future impl: shared_future constructed from rv-reference of future
2013-03-04 19:49:48 +01:00
Oliver Kowalke
0b6cbe83ae
new future impl: shared_future
2013-03-03 18:23:51 +01:00
Oliver Kowalke
12229bbea2
new future impl: 1.part: promise, future, future_base, future_object
2013-03-03 16:54:53 +01:00
Oliver Kowalke
b752574dfa
disable future tests and example
2013-02-27 20:16:03 +01:00
Oliver Kowalke
c6268b7be3
disable tests for threaded fibers
2013-02-24 07:28:36 +01:00