Oliver Kowalke
dbfde81013
enhance unit-test for bounded_channel
2015-08-04 17:19:26 +02:00
Oliver Kowalke
95d6a589a7
fix performance test code for fibers
...
- preserve_fpu() was removed
2015-08-03 21:11:16 +02:00
Oliver Kowalke
b91fc419cf
fix waiting_queue impl
2015-08-03 20:19:51 +02:00
Oliver Kowalke
ba80101f47
enhance test for bounded_channel
...
- note implementation of waiting_queue does not preserve order
therefore unit test for bounded_channel fails
2015-08-03 17:33:04 +02:00
Oliver Kowalke
368e4e5063
Merge pull request #40 from nat-goodspeed/develop
...
Add ready_fibers() override for examples/priority.cpp.
2015-08-03 08:34:36 +02:00
Oliver Kowalke
f456902492
add test for bounded_channel (basics)
2015-08-02 21:17:04 +02:00
Oliver Kowalke
3538208387
test_unbounded_channel: add test for moveable type
2015-08-02 21:16:40 +02:00
Oliver Kowalke
f275125b93
fixes for unbounded_channel
2015-08-02 20:48:52 +02:00
Nat Goodspeed
0d5ad2adbd
Add ready_fibers() override for examples/priority.cpp.
2015-07-31 17:29:33 -04:00
Oliver Kowalke
6a0b14e3e8
some mods for asnyc(some mods for asnyc())
2015-07-31 14:49:48 +02:00
Oliver Kowalke
81babd03be
tests: enable tests for shared_future<>
2015-07-31 12:12:36 +02:00
Oliver Kowalke
01a2162eb0
async(): use rv-ref in result_of<>
2015-07-31 10:48:00 +02:00
Oliver Kowalke
a9eb294f9d
mt mutext test: replace rref by generic lambda
2015-07-31 08:59:40 +02:00
Oliver Kowalke
09729c6eba
add comment related to derrred-call
2015-07-31 08:59:19 +02:00
Oliver Kowalke
7eac5d4e98
fix invoke()
2015-07-30 21:09:08 +02:00
Oliver Kowalke
f55512ce12
pass tuple/index_sequence to public ctor of fiber_context
2015-07-30 18:33:01 +02:00
Oliver Kowalke
6eaab69a76
bounded-channel: high-watermark must be greater than zero
2015-07-29 20:06:06 +02:00
Oliver Kowalke
a114a73de5
Merge pull request #39 from nat-goodspeed/develop
...
Tweaks to new documentation
2015-07-29 15:52:21 +02:00
Nat Goodspeed
23434ca2e2
Tweaks to new documentation
2015-07-29 09:21:49 -04:00
Oliver Kowalke
7a792810c9
documentation: some notes to boost.asio integration
2015-07-29 12:24:00 +02:00
Oliver Kowalke
5feef62a49
documentation: add description for mutext types
2015-07-29 12:13:33 +02:00
Oliver Kowalke
b8e2520b29
documentation: formating
2015-07-29 11:48:42 +02:00
Oliver Kowalke
4140e10330
this_fiber::yield() is not an interruption point
2015-07-29 11:47:17 +02:00
Oliver Kowalke
37b22812f8
documentation: note about thread-safe synchronization
...
- note added to section 'Synchronization"
2015-07-29 11:35:01 +02:00
Oliver Kowalke
5c9cbd0307
documentation: add missing function descriptions
2015-07-29 11:30:43 +02:00
Oliver Kowalke
09f5bfa848
formating correction
2015-07-29 11:30:38 +02:00
Oliver Kowalke
88d44ffee6
documentation: fix fals function-links in interruption points
2015-07-29 11:19:18 +02:00
Oliver Kowalke
2cbe22d8af
documentation: add free function wait_interval()
...
- wait_itneval() sets/returns the time interval the thread is set to
sleep if not fiber is ready to run
2015-07-29 11:18:09 +02:00
Oliver Kowalke
642fff9b93
remove unused preserve_fpu() functionality
2015-07-29 11:14:27 +02:00
Oliver Kowalke
3dbca594df
documentation: add missing interruption points in list
2015-07-29 10:59:07 +02:00
Oliver Kowalke
2d07f7b47b
documentation: future throw fiber_interrupted
2015-07-29 10:58:26 +02:00
Oliver Kowalke
d5858a2677
documentation: remove invalid functions
2015-07-29 10:38:42 +02:00
Oliver Kowalke
1c139895e0
documentation: rename queue.qbk -> channel.qbk
2015-07-29 10:25:18 +02:00
Oliver Kowalke
519a8924a9
documentation: barrier:wait() is interruption point
2015-07-29 10:20:01 +02:00
Oliver Kowalke
caf55428a1
documentation: fiber::join() asserts on not-a-fiber
2015-07-29 10:12:31 +02:00
Oliver Kowalke
034c19805c
Merge pull request #38 from nat-goodspeed/develop
...
Responses to recent email
2015-07-29 09:28:45 +02:00
Nat Goodspeed
e1c9b2b54c
Make Rationale section reference new BOOST_FIBERS_NO_ATOMICS passage.
...
Tweaks to new wording.
2015-07-28 22:31:35 -04:00
Nat Goodspeed
dbca64d7d0
Merge branch 'develop' of github.com:olk/boost-fiber into develop
2015-07-28 22:07:13 -04:00
Nat Goodspeed
ac248e75f8
Couple tweaks to futures.qbk.
2015-07-28 22:06:44 -04:00
Oliver Kowalke
b63f95758d
documentation: formating of code in scheduler.qbk
2015-07-28 18:24:25 +02:00
Oliver Kowalke
161f2a134c
documentation: default scheduler is not heap-allocated
...
- round_robin, the default scheduler, is created at thread-creation
as thread-local, local static
2015-07-28 18:20:31 +02:00
Oliver Kowalke
1413406fab
documentation: ready_fibers() returns zero if scheduler has no fibers
2015-07-28 17:22:12 +02:00
Oliver Kowalke
6740de6761
documentation: synch. objects are threadsafe per default
...
- lib uses atomics to safely synchronize objects running in
different threads
- use BOOST_FIBERS_NO_ATOMICS to remove safety
2015-07-28 09:57:00 +02:00
Oliver Kowalke
3fac431abc
documentation: this_fiber::yield() is a interruption point
...
- this_fiber::yield() calls fiber_manager::yield() that calls
fiber_manager::run() -> interruption point
2015-07-28 09:51:58 +02:00
Oliver Kowalke
350a26b27a
documentation: cycles of fiber switch
...
- a context switch between fibers costs less than 100 cycles
2015-07-28 09:20:27 +02:00
Oliver Kowalke
7535e13f92
Merge pull request #37 from nat-goodspeed/develop
...
Describe bounded_channel::pop() et al. same as unbounded_channel.
2015-07-22 18:33:04 +02:00
Nat Goodspeed
2b7f67c1de
Merge branch 'develop' of github.com:olk/boost-fiber into develop
2015-07-22 08:25:49 -04:00
Nat Goodspeed
018972f69a
Describe bounded_channel::pop() et al. same as unbounded_channel.
...
Well, almost the same: bounded_channel pop operations include the note about
unblocking blocked push operations. Parameterize xchannel_pop (et al.) to
allow this divergence between unbounded_channel and bounded_channel pop
methods.
2015-07-22 08:24:17 -04:00
Oliver Kowalke
16fd138565
Merge pull request #36 from nat-goodspeed/develop
...
Fix "enchanneled"/"dechanneled". Encapsulate some redundant wording.
2015-07-21 21:37:49 +02:00
Nat Goodspeed
0004ac676f
Fix "enchanneled"/"dechanneled". Encapsulate some redundant wording.
...
The descriptions of [un]bounded_channel::push() and the other push variants
are very similar, and must be kept consistent. Similarly, all the pop variants
must be kept consistent. Use QuickBook templates to supply much of the wording
for these methods.
2015-07-21 10:44:49 -04:00