Oliver Kowalke
|
b859f8984a
|
add assertion in get_next_() ensures scheduler is set
|
2015-10-11 08:44:06 +02:00 |
|
Oliver Kowalke
|
950a1571bb
|
do not move yielded contexts in resume_()
|
2015-10-11 08:43:40 +02:00 |
|
Oliver Kowalke
|
01dda0048f
|
remove std::mutex associated with yield-queue
|
2015-10-11 08:42:48 +02:00 |
|
Oliver Kowalke
|
d4c7232fa2
|
modify work-sharing example
|
2015-10-11 08:41:49 +02:00 |
|
Oliver Kowalke
|
dbfd80fb2d
|
use yield-queue because work-sharing
- yield-queue prevents resumtion of a fiber which is passed to
awakened() but has not yet suspended
|
2015-10-10 21:52:03 +02:00 |
|
Oliver Kowalke
|
ecab1c5ee6
|
work-sharing example
|
2015-10-10 21:51:14 +02:00 |
|
Oliver Kowalke
|
b032457397
|
asio examples added
|
2015-10-10 21:50:22 +02:00 |
|
Oliver Kowalke
|
ae67ee1694
|
asio's spawn()
|
2015-10-05 19:23:16 +02:00 |
|
Oliver Kowalke
|
5d71a4f8cd
|
asio examples
|
2015-10-04 20:08:21 +02:00 |
|
Oliver Kowalke
|
5357f7038e
|
scheduling-algorithm handles empty ready-queue
- if dispatcher-context detects empty ready-queue
the scheduler has to be suspended till signaled or
timeout reached
|
2015-10-03 09:35:47 +02:00 |
|
Oliver Kowalke
|
4a37a15d19
|
move make_dispatcher_context() to cpp file
|
2015-10-03 09:14:33 +02:00 |
|
Oliver Kowalke
|
8662b5e253
|
align main context and scheduler to 64byte boundaries
|
2015-10-02 19:52:43 +02:00 |
|
Oliver Kowalke
|
4cd1a910d9
|
use schwarz counter idiom for static variable initialization
|
2015-10-02 17:28:59 +02:00 |
|
Oliver Kowalke
|
20196fcd69
|
set active context to nullptr in ~scheduler()
|
2015-09-30 19:58:04 +02:00 |
|
Oliver Kowalke
|
275ae3b981
|
add additional examples
|
2015-09-30 17:38:44 +02:00 |
|
Oliver Kowalke
|
f9ffd54666
|
addjust calling do_invoke()
|
2015-09-30 17:38:12 +02:00 |
|
Oliver Kowalke
|
05bd4b9424
|
move context' from current scheduler to new, custom scheduler
|
2015-09-30 17:37:11 +02:00 |
|
Oliver Kowalke
|
48d652adab
|
add example wait_stuff
|
2015-09-29 20:27:33 +02:00 |
|
Oliver Kowalke
|
6d24450d40
|
example futures_mt removed
|
2015-09-29 20:26:35 +02:00 |
|
Oliver Kowalke
|
5ee6570363
|
check for unwinding on correct conntext after resume
|
2015-09-29 20:10:10 +02:00 |
|
Oliver Kowalke
|
253d981f52
|
examples added
|
2015-09-29 17:55:46 +02:00 |
|
Oliver Kowalke
|
4c791a3790
|
support for fiber properties + custom scheduler
|
2015-09-29 17:54:29 +02:00 |
|
Oliver Kowalke
|
b03ab3b3ba
|
disable mt-tests
|
2015-09-29 17:48:34 +02:00 |
|
Oliver Kowalke
|
a847baa932
|
link/unlink of context protected by spinlock
|
2015-09-28 19:58:22 +02:00 |
|
Oliver Kowalke
|
eb7c4249d5
|
rename managed_is_linked() -> worker_is_linked()
|
2015-09-28 19:35:59 +02:00 |
|
Oliver Kowalke
|
68f8053059
|
use do_invoke()
|
2015-09-28 18:47:59 +02:00 |
|
Oliver Kowalke
|
a48d3a44fa
|
fix test
|
2015-09-28 18:47:51 +02:00 |
|
Oliver Kowalke
|
ef19ef9cc4
|
use auto for fiber-fn on fiber's stack
|
2015-09-27 20:40:54 +02:00 |
|
Oliver Kowalke
|
f0cd02e489
|
remove noexcept from fiber::detach()
|
2015-09-27 20:40:36 +02:00 |
|
Oliver Kowalke
|
43da6f5c1c
|
modify test for multithreaded access to future
|
2015-09-27 16:16:09 +02:00 |
|
Oliver Kowalke
|
0b4c1ae306
|
store fiber-fn on fiber's stack
|
2015-09-27 16:14:55 +02:00 |
|
Oliver Kowalke
|
73b03c1d67
|
use std::allocator_arg for execution_context ctor
|
2015-09-27 16:09:11 +02:00 |
|
Oliver Kowalke
|
6e479279dd
|
use flag for multihtreded use of condition test
|
2015-09-24 17:36:41 +02:00 |
|
Oliver Kowalke
|
fc404c58eb
|
unwind at shutdown
- scheduler holds a list of managed worker-fibers
- ~scheduler() requests stack unwinding for fibers not yet terminated
|
2015-09-24 17:35:40 +02:00 |
|
Oliver Kowalke
|
1f88055f42
|
enhance test
|
2015-09-23 17:45:13 +02:00 |
|
Oliver Kowalke
|
7668f86c26
|
more comments in scheduler.cpp
|
2015-09-23 17:44:50 +02:00 |
|
Oliver Kowalke
|
d3076f930b
|
some enhancements for scheduler
|
2015-09-23 17:44:35 +02:00 |
|
Oliver Kowalke
|
fcb981ccf7
|
pass flag_ as reference arg to lmbda for condition in autoreset_event
|
2015-09-23 17:42:17 +02:00 |
|
Oliver Kowalke
|
d0cb6e6756
|
some examples
|
2015-09-22 21:10:14 +02:00 |
|
Oliver Kowalke
|
e38dc9b139
|
renaming of scheduler member functions
|
2015-09-22 19:30:29 +02:00 |
|
Oliver Kowalke
|
b43f288469
|
support for futures added
|
2015-09-22 19:17:08 +02:00 |
|
Oliver Kowalke
|
1b274d9b73
|
support for fiber-specific storage
|
2015-09-22 19:10:09 +02:00 |
|
Oliver Kowalke
|
b4f47821d9
|
add notice of derived work to tests
|
2015-09-22 19:06:37 +02:00 |
|
Oliver Kowalke
|
38aa1f4366
|
support of detaching fibers added
|
2015-09-22 19:05:57 +02:00 |
|
Oliver Kowalke
|
6ad6579666
|
fix interruption + condition:wait()
|
2015-09-21 20:47:53 +02:00 |
|
Oliver Kowalke
|
c0f3fe393c
|
enhance test_fiber
|
2015-09-21 20:37:55 +02:00 |
|
Oliver Kowalke
|
128b534058
|
fix context
|
2015-09-21 20:34:41 +02:00 |
|
Oliver Kowalke
|
38457260bc
|
remoce noexcept specifier from context::join()
|
2015-09-21 20:34:09 +02:00 |
|
Oliver Kowalke
|
1ad58fbba1
|
add interruption
|
2015-09-21 20:18:53 +02:00 |
|
Oliver Kowalke
|
2e0d09b3c7
|
fix comparation of address and nullptr
|
2015-09-21 20:14:07 +02:00 |
|