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

573 Commits

Author SHA1 Message Date
Oliver Kowalke
8cfec6deed some fixes for asio exmaples - not compiling 2015-02-10 18:40:40 +01:00
Oliver Kowalke
502581e1e1 remove example fiber-migration 2015-02-10 17:38:44 +01:00
Oliver Kowalke
aa337b07f7 move 'fm_' - free functions into fiber_manager 2015-02-08 16:02:22 +01:00
Oliver Kowalke
5a0f9394e8 Merge branch 'ctx-onstack-lambda' into develop
Conflicts:
	examples/cpp03/migration/workstealing_round_robin.cpp
	include/boost/fiber/bounded_queue.hpp
	include/boost/fiber/detail/worker_fiber.hpp
	include/boost/fiber/unbounded_queue.hpp
	src/detail/worker_fiber.cpp
2015-02-06 18:32:35 +01:00
Oliver Kowalke
13bf486fea update stack-allocators 2015-02-06 18:29:26 +01:00
Oliver Kowalke
d1d7ad7aa0 use recursive-mutex in fiber-migration example 2015-01-19 18:13:51 +01:00
Oliver Kowalke
f37d7c5511 store terminated fibers in tqueue 2015-01-15 21:22:10 +01:00
Oliver Kowalke
f22ae8ba53 use lambda as fiber-fn 2015-01-13 15:15:59 +01:00
Oliver Kowalke
27c0a78d36 allocate fiber_context on stack 2015-01-13 14:57:32 +01:00
Oliver Kowalke
97d13ccc70 fix migartion example 2015-01-10 21:22:09 +01:00
Oliver Kowalke
bfde9ecae6 improve spinlock code 2015-01-10 21:21:36 +01:00
Oliver Kowalke
9b7b0be903 Revert "improve spinlock algorithm"
This reverts commit 08f3b52193.
2015-01-10 21:21:05 +01:00
Oliver Kowalke
08f3b52193 improve spinlock algorithm 2015-01-10 21:20:31 +01:00
Oliver Kowalke
0770f79906 fix performance tests 2015-01-09 17:52:24 +01:00
Oliver Kowalke
37747ece0d use fibers::mutext instead std::mutex in workstealing example 2015-01-05 19:58:07 +01:00
Oliver Kowalke
fbe98be71e std::copy_exception is deprecated (use std::make_exception_ptr) 2015-01-05 19:57:51 +01:00
Oliver Kowalke
654127af00 rename fiber_base -> fiber_context and move to public namespace 2015-01-04 16:05:08 +01:00
Oliver Kowalke
0fda6d1f88 remove some warnings 2015-01-04 13:13:15 +01:00
Oliver Kowalke
3b332c17ee variadric arguments 2015-01-01 14:40:39 +01:00
Oliver Kowalke
584dcdceee allocate/deallocate fiber_base via allocator 2014-12-29 17:38:01 +01:00
Oliver Kowalke
6a652b8cd7 use std::forward() for rvalues 2014-12-28 22:03:09 +01:00
Oliver Kowalke
f6c7ab7826 rename (un)bounded_queue -> (un)bounded_channel + use allocator 2014-12-28 21:30:14 +01:00
Oliver Kowalke
44326ebdd3 remove priority 2014-12-28 08:35:44 +01:00
Oliver Kowalke
4d1f12e333 extend async() to accept a stack-allocator 2014-12-28 08:07:31 +01:00
Oliver Kowalke
7b3f18becd improve test related to futures 2014-12-28 08:06:43 +01:00
Oliver Kowalke
e9e8ec1b85 fix examples 2014-12-27 21:17:13 +01:00
Oliver Kowalke
0bd0062789 correct forward declaration of scheduler 2014-12-27 21:16:58 +01:00
Oliver Kowalke
e1698b64a3 static-cast to int for errc 2014-12-27 21:16:36 +01:00
Oliver Kowalke
7f7f01098b make main-fiber thread affine 2014-12-27 21:16:03 +01:00
Oliver Kowalke
2f19be6d67 use C++11 2014-12-27 19:07:42 +01:00
Oliver Kowalke
ddbdd91ced use execution_context 2014-11-24 19:58:59 +01:00
Oliver Kowalke
9bd1c0cd0f Nat Goodspeed: optimize fifo + waiting_queue 2014-11-24 19:18:18 +01:00
Oliver Kowalke
81ec70bcef optimize queues : from Nat Goodspeed 2014-11-24 18:11:37 +01:00
Oliver Kowalke
e29cc6dc81 use correct eader for thread_specific_ptr<> 2014-11-24 18:11:22 +01:00
Oliver Kowalke
6fc2b57f23 use thread_specific_ptr 2014-11-24 18:11:08 +01:00
Oliver Kowalke
691aafd839 Nat Goodspeed: Reimplement waiting_queue; Simplify fifo 2014-11-23 19:23:08 +01:00
Oliver Kowalke
ba3c0bb806 optimize queues : from Nat Goodspeed 2014-11-22 11:23:18 +01:00
Oliver Kowalke
ea709758cb use correct eader for thread_specific_ptr<> 2014-11-22 11:22:41 +01:00
Oliver Kowalke
4cc6e72fae use thread_specific_ptr 2014-11-20 18:36:09 +01:00
Oliver Kowalke
4071e72299 remove debug output 2014-11-20 18:34:45 +01:00
Oliver Kowalke
7b35699b6e Revert "Nat Goodspeed:"
This reverts commit 1e751d7dbf.
2014-11-20 18:17:08 +01:00
Oliver Kowalke
f18131a409 Merge branch 'coro' into develop 2014-11-12 20:05:03 +01:00
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
6a1257442b re-factoring of thread_local_ptr<>
Conflicts:
	include/boost/fiber/detail/scheduler.hpp
	src/detail/scheduler.cpp
	src/fiber_manager.cpp
2014-10-01 23:19:36 +02:00
Oliver Kowalke
2e4fa3e53f re-factoring of thread_local_ptr<> 2014-10-01 21:40:12 +02:00
Oliver Kowalke
1c3b447716 some fixes 2014-09-26 17:57:53 +02:00
Oliver Kowalke
70440591cf call cleanup-function in thread_local_ptr
(cherry picked from commit fca6e0301a)
2014-09-25 19:06:01 +02:00
Oliver Kowalke
b0eb8bc592 call cleanup-function in thread_local_ptr
(cherry picked from commit fca6e0301a)
2014-09-25 18:59:10 +02:00
Oliver Kowalke
7483a729aa some fixes 2014-09-25 18:52:04 +02:00
Oliver Kowalke
fca6e0301a call cleanup-function in thread_local_ptr 2014-09-25 18:51:30 +02:00