Oliver Kowalke
6c35324727
use atomics per default
...
- atomics can be disable using BOOST_FIBERS_NO_ATOMICS compiler flag
2015-06-20 21:31:34 +02:00
Oliver Kowalke
9d246ae680
enable compiling with atomics per default
2015-06-20 12:27:51 +02:00
Oliver Kowalke
e2404eefd7
introduce new queue for terminated fibers
2015-06-13 08:14:14 +02:00
Oliver Kowalke
9b8c772388
define BOOST_DISABLE_ASSERTS in Jamfile
...
- for variant=release or optimization=speed define BOOST_DISABLE_ASSERTS
2015-06-13 08:06:18 +02:00
Nat Goodspeed
765014daee
working our way through build errors
2015-05-11 05:38:45 -04:00
Nat Goodspeed
2687814477
Merge branch 'develop' of github.com:olk/boost-fiber into sched-props-dev
...
Resolved conflicts:
doc/condition_variables.qbk
examples/cpp03/migration/workstealing_round_robin.cpp
examples/cpp03/migration/workstealing_round_robin.hpp
include/boost/fiber/algorithm.hpp
include/boost/fiber/bounded_queue.hpp
include/boost/fiber/detail/fiber_base.hpp
include/boost/fiber/detail/fifo.hpp
include/boost/fiber/detail/waiting_queue.hpp
include/boost/fiber/detail/worker_fiber.hpp
include/boost/fiber/fiber.hpp
include/boost/fiber/fiber_manager.hpp
include/boost/fiber/fixedsize_stack.hpp
include/boost/fiber/operations.hpp
include/boost/fiber/round_robin.hpp
include/boost/fiber/unbounded_queue.hpp
src/detail/worker_fiber.cpp
src/fiber.cpp
src/fiber_manager.cpp
src/round_robin.cpp
2015-05-10 22:03:35 -04:00
Oliver Kowalke
f373348335
update Jamfiles.v2
2015-02-12 16:30:10 +01:00
Oliver Kowalke
aa337b07f7
move 'fm_' - free functions into fiber_manager
2015-02-08 16:02:22 +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
2f19be6d67
use C++11
2014-12-27 19:07:42 +01:00
Nat Goodspeed
ed64ee77f8
Set fiber_properties::sched_algo_ every time through awakened().
...
Instead of setting a fiber_properties subclass's sched_algo_ back pointer once
at construction time, unconditionally set it every time that fiber becomes
READY (and is therefore passed to sched_algorithm::awakened()). This handles
the case in which that fiber migrates to a different thread with a different
sched_algorithm subclass instance.
Break out fiber_properties::notify() implementation to a separate .cpp
implementation file so it can bring in algorithm.hpp. We don't want
properties.hpp to depend on algorithm.hpp.
2014-11-10 19:59:29 -05:00
Oliver Kowalke
7fb469cd10
some fixes
2014-09-24 19:18:44 +02:00
Oliver Kowalke
9057a3c365
split round_robin into sched_algorithm + fiber_manager
2014-03-20 20:04:59 +01:00
Oliver Kowalke
cf90b40978
class fiber_group removed
2014-03-19 21:29:05 +01:00
Oliver Kowalke
228aae6833
do not use reference-counting
2014-03-19 19:55:56 +01:00
Oliver Kowalke
5b6d77b6b5
renaming of fiber classes
2014-03-05 17:30:11 +01:00
Oliver Kowalke
67111d3e58
workstealing round-robin scheduler moved to examples
2014-03-04 18:01:42 +01:00
Oliver Kowalke
dee8c72d2a
rename boost.strand to boost.fiber
2013-12-16 17:58:20 +01:00
Oliver Kowalke
436883ca33
add workstealing round_robin
2013-10-25 18:01:56 +02:00
Oliver Kowalke
98f54ad0e4
rename fibers::asio::io_service -> fibers::asio::round_robin
2013-10-24 18:42:07 +02:00
Oliver Kowalke
d924f5aa87
spinlock added
2013-10-17 20:55:16 +02:00
Oliver Kowalke
ec8a11e60c
atomic fiber::state_
2013-10-17 19:21:26 +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
8734e49176
remove obsolete classes/files
2013-09-09 09:41:04 +02:00
Oliver Kowalke
e996d2e28f
use coroutines inside fiber
2013-09-09 08:52:26 +02:00
Oliver Kowalke
5afff7e0f9
fix libname for install process
2013-08-18 21:02:39 +02:00
Oliver Kowalke
4121cac318
add support for timed-operations (wait_for/wait_until)
2013-08-16 21:24:32 +02:00
Oliver Kowalke
94482d25b6
add time-point to schedulable fiber
2013-08-13 18:23:53 +02:00
Oliver Kowalke
f06b6cf0d4
fix auto-link in config.hpp
2013-08-13 10:27:02 +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
de3bc64e4f
boost.asio related stuff (fiber-aware io_servic etc.)
2013-06-14 20:37:47 +02:00
Oliver Kowalke
6b5d58d2bb
some enhancments
2013-06-09 20:31:38 +02:00
Oliver Kowalke
5396888ec3
atomic-ops removed
2013-03-19 18:19:27 +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
b90459f94d
add thread_yield()
2013-02-03 15:43:35 +01:00
Oliver Kowalke
c23397b018
remove dependenxcy to bosot.chrono and boost.thread
2013-01-31 17:35:02 +01:00
Oliver Kowalke
97fb1c80ac
some modes: use this_fiber in future.hpp
2013-01-23 19:48:27 +01:00
Oliver Kowalke
df40f8c9f4
add interuption_points() in waiting functions
2013-01-11 18:59:21 +01:00
Oliver Kowalke
f18136562f
spin_mutext -> soinlock; fixes
2013-01-09 17:09:16 +01:00
Oliver Kowalke
46cd4bd112
fix tests
2013-01-08 17:38:16 +01:00
Oliver Kowalke
77e1b216e0
use atomic operations
2012-12-31 11:34:02 +01:00
Oliver Kowalke
cfdcf1d16a
interface algorithm, round_robin
2012-12-19 19:37:05 +01:00
Oliver Kowalke
b0a59e4fb8
default_scheduler moved to public namespace
2012-12-16 20:27:53 +01:00
Oliver Kowalke
fb79b6eccb
move scheduler in public namespace
2012-12-14 12:33:37 +01:00
Oliver Kowalke
35ac18fa73
scheduler is interface; default_scheduler added
2012-12-14 10:40:35 +01:00
Oliver Kowalke
81e62e8962
changed directory structure as required by modularized-boost
2012-12-09 15:22:59 +01:00