2
0
mirror of https://github.com/boostorg/fiber.git synced 2026-01-19 04:12:09 +00:00

1960 Commits

Author SHA1 Message Date
Milan Svoboda
844a9527c0 Remove UTF-8 BOM at begining of the file. 2018-10-02 20:45:23 +02:00
Oliver Kowalke
355a1bbb06 Merge branch 'develop' 2018-10-02 18:59:03 +02:00
Oliver Kowalke
8db97c837c fix documentation for buffered_channel::push()
- in context of #170
2018-10-02 14:39:16 +02:00
Oliver Kowalke
c8b67dce2d Merge branch 'develop' 2018-08-21 20:52:07 +02:00
Oliver Kowalke
2fff971242 fix unsufficent synchronization of work-stealing algorithms 2018-08-21 09:53:37 +02:00
Oliver Kowalke
43404cff3a add missing <numa> property 2018-08-21 09:52:29 +02:00
Oliver Kowalke
1110e9dcad Merge pull request #178 from Romain-Geissler-1A/fix-fss-reset
Really overwrite previous value when using boost::fibers::fiber_speci…
2018-07-17 07:45:38 +02:00
Romain Geissler
2fc6877704 Really overwrite previous value when using boost::fibers::fiber_specific_ptr::reset(newValue). 2018-07-17 00:03:22 +02:00
Oliver Kowalke
2112ee33c8 Merge branch 'develop' boost-1.68.0 2018-06-27 12:45:24 +02:00
Oliver Kowalke
aee67c214e re-enable libstdc++ 4.8
- in context of #152
2018-06-27 11:29:49 +02:00
Oliver Kowalke
1fe1f4dc52 Merge branch 'develop' 2018-06-11 19:30:10 +02:00
Oliver Kowalke
56647d57a9 unlock spinlock for not timedout context'
- in contet of #175
2018-06-06 19:56:53 +02:00
Oliver Kowalke
252a9513d9 docu 2018-05-26 06:04:10 +02:00
Oliver Kowalke
7d5c00670a Merge pull request #173 from djarek/fix_asio_example
Fix asio_handler_invoke hook in ASIO example
2018-05-19 14:05:03 +02:00
Damian Jarek
10a56572fc Fix asio_handler_invoke hook in ASIO example
The previous hook required the Fn to be CopyConstructible, wheras
ASIO 1.66+ permits MoveConstructible-only CompletionHandlers.

Resolves: https://github.com/boostorg/beast/issues/1134

Signed-off-by: Damian Jarek <damian.jarek93@gmail.com>
2018-05-18 21:05:17 +02:00
Oliver Kowalke
a76f54fcf3 move NUMA to separate library
- in context of #172
2018-05-13 09:20:38 +02:00
Oliver Kowalke
44f78b7606 Merge pull request #171 from jbeich/freebsd
Unbreak build on FreeBSD after 7ff5a3564b
2018-05-04 07:52:58 +02:00
Oliver Kowalke
188246c8d2 docu: MinGW using pthread impl not supported on Windows
- in context of #172
2018-05-04 07:49:02 +02:00
Oliver Kowalke
768a1d9a98 Merge branch 'develop' 2018-04-16 08:02:11 +02:00
Jan Beich
225b0d75d1 Use pthread_setaffinity_np() on FreeBSD as well
libs/fiber/src/numa/freebsd/pin_thread.cpp:13:10: fatal error: 'sys/thread.h' file not found
 #include <sys/thread.h>
          ^~~~~~~~~~~~~~

libs/fiber/src/numa/freebsd/pin_thread.cpp:28:35: error: too few arguments to function call, single argument 'id' was not specified
    pin_thread( cpuid, ::thr_self() );
                       ~~~~~~~~~~ ^
/usr/include/sys/thr.h:77:1: note: 'thr_self' declared here
int thr_self(long *id);
^

libs/fiber/src/numa/freebsd/pin_thread.cpp:36:85: error: cannot initialize a parameter of type 'id_t' (aka 'long') with an lvalue of type 'std::thread::native_handle_type' (aka 'pthread *')
    if ( BOOST_UNLIKELY( 0 != ::cpuset_setaffinity( CPU_LEVEL_WHICH, CPU_WHICH_TID, h, sizeof( mask), & mask) ) ) {
                                                                                    ^
./boost/config/compiler/clang.hpp:67:44: note: expanded from macro 'BOOST_UNLIKELY'
 #define BOOST_UNLIKELY(x) __builtin_expect(x, 0)
                                            ^
/usr/include/sys/cpuset.h:156:52: note: passing argument to parameter here
int     cpuset_setaffinity(cpulevel_t, cpuwhich_t, id_t, size_t, const cpuset_t *);
                                                       ^
2018-04-10 14:57:05 +00:00
Oliver Kowalke
de26f060f6 docu
- in context of #170
2018-03-22 08:35:39 +01:00
Oliver Kowalke
ad7b8b259c Merge branch 'develop' boost-1.67.0 2018-02-26 19:43:05 +01:00
Oliver Kowalke
c8f3f405a7 fox docu
- in context of #168
2018-02-26 19:42:13 +01:00
Oliver Kowalke
1f97f78d10 Merge branch 'develop' 2018-02-19 16:07:05 +01:00
Oliver Kowalke
41b008950f uni-test: do not build ucontext for Android 2018-02-19 16:06:35 +01:00
Oliver Kowalke
1284b6111e Merge branch 'develop' 2018-02-15 17:48:45 +01:00
Oliver Kowalke
c49b8424e4 update docu 2018-02-15 17:48:37 +01:00
Oliver Kowalke
83c72cd9d3 Merge branch 'develop' 2018-02-10 07:33:58 +01:00
Oliver Kowalke
3d15104bc5 fiber: resume() and resume_with() are rvalue-ref qulified only 2018-02-09 17:31:11 +01:00
Oliver Kowalke
003312e00d unit-tests: remove double registered tests 2018-02-09 17:30:52 +01:00
Oliver Kowalke
e38d4b3002 Merge branch 'develop' 2018-02-08 21:24:31 +01:00
Oliver Kowalke
41eff8d732 support for context::fiber 2018-02-07 20:15:53 +01:00
Oliver Kowalke
0cb7a8e748 Merge branch 'develop' 2018-01-18 21:19:30 +01:00
Oliver Kowalke
f12288bec7 call shared_state::owner_destroyed() only if future was created from
- in context of #167
- in dtor of promise_base and packaged_task test if shared-state was
  initialized and a future was constructed from shared_state
- call shared_state::owner_destroyed() only if both condition are true
2018-01-11 18:54:16 +01:00
Oliver Kowalke
e325cf78d5 remove assertion for wait_is_linked() in schedule()
- in context of #166
- scheduler::schedule() is called by scheduler::sleep2ready_()
- a timed wait-op might timed out (and context might resumed by
  scheduler::slepp2read_()) while the context is still in sync.
  primitve's wait-queue
2018-01-04 13:13:36 +01:00
Oliver Kowalke
e66cfc523e Merge pull request #165 from DanielaE/fix/replace-deprecated-allocator-members
Most members of std::allocate are deprecated in C++17
2018-01-01 19:48:58 +01:00
Oliver Kowalke
79263fc403 Merge pull request #164 from DanielaE/fix/no-iterator-inheritance
Inheriting std::iterator is deprecated in C++17
2018-01-01 19:48:42 +01:00
Daniela Engert
05c7f1ea1a Inheriting std::iterator is deprecated in C++17
Therefore replace inheritance by lifting std::iterator's members into the derived class.

Signed-off-by: Daniela Engert <dani@ngrt.de>
2018-01-01 19:29:48 +01:00
Daniela Engert
7a5028827d Most members of std::allocate are deprecated in C++17
And so is std::allocator<void>. Replace them by their cousins from std::allocator_traits. In addition to that, use std:allocator_traits wherever possible. Without that, heaps of deprecation warnings will fall onto humble users when compiling with MSVC 15 in C++17 mode.

Signed-off-by: Daniela Engert <dani@ngrt.de>
2018-01-01 19:28:45 +01:00
Oliver Kowalke
1941e71a63 inheriting std::iterator is deprecated in C++17 2018-01-01 19:22:38 +01:00
Oliver Kowalke
a2b526204a disable pin-thread tests 2017-12-30 08:36:14 +01:00
Oliver Kowalke
7ff5a3564b NUMA: pin thread to CPU via std::thread::native_handle()
- in context of #148
2017-12-29 06:34:35 +01:00
Oliver Kowalke
53eddf651f remove use-coutner increment for timed wait ops.
- in context of #162
2017-12-27 09:49:41 +01:00
Oliver Kowalke
4a18610540 Merge branch 'develop' 2017-12-25 07:24:55 +01:00
Oliver Kowalke
c8a5f4a242 docu: StackAllocator as rvalue reference in fibers ctor 2017-12-25 07:24:24 +01:00
Oliver Kowalke
6186f22946 pass StackAllocator to fiber via rvalue references 2017-12-23 11:47:45 +01:00
Oliver Kowalke
903c6dadef delete move copy ctor and assignment op for context 2017-12-20 07:49:51 +01:00
Oliver Kowalke
09e2167c76 use fiber::swap() inside move copy ctor 2017-12-20 07:49:22 +01:00
Oliver Kowalke
0655f68540 Merge branch 'develop' 2017-12-18 13:47:55 +01:00
Oliver Kowalke
c63e4eb289 add BOOST_FIBERS_DECL to work_stealing class
- in context of #158
2017-12-13 12:30:40 +01:00