2
0
mirror of https://github.com/boostorg/fiber.git synced 2026-02-16 13:22:17 +00:00
Commit Graph

1022 Commits

Author SHA1 Message Date
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