Vicente J. Botet Escriba
dcafe1e17d
Add noexcept(false) in destructor that could throw in C++11.
2017-04-29 16:15:57 +02:00
Vicente J. Botet Escriba
c83d30f526
manage with #12874 .
2017-04-29 16:13:52 +02:00
Vicente J. Botet Escriba
51b367df53
manage with 12958.
2017-04-29 16:12:35 +02:00
Vicente J. Botet Escriba
65f98979ff
replace and by && to make the code portable
2017-03-01 19:39:56 +01:00
Vicente J. Botet Escriba
30dff7f84a
try to fix MONOTONIC timming issue.
2017-02-28 23:28:44 +01:00
Christian Neumüller
2ed0c2ad5f
Loop executor: Don't poll but wait in loop().
2017-02-28 18:50:08 +01:00
Vicente J. Botet Escriba
c7348b29cf
Compile conditionally to try to fix the timespec monotonic issue. This is not a final solution as we need to add two defines while building Boost.Thread, but atleast will allow to check if the solution work.
2017-02-25 22:41:00 +01:00
Vicente J. Botet Escriba
9bbf9bed80
rollback MONOTONIC_CLOCK change as it seems it introduce regressions.
2017-02-24 15:20:04 +01:00
Vicente J. Botet Escriba
544eda51bd
make use of MONOTONIC_CLOCK when available.
2017-02-18 10:34:36 +01:00
Vicente J. Botet Escriba
e16705a72a
Added more functors to scoped threads.
2017-02-18 10:22:34 +01:00
Vicente J. Botet Escriba
61a26492c3
use SFINAE for wait_for_all is_future_type.
2017-02-18 10:21:45 +01:00
Vicente J. Botet Escriba
4d4ddcdc36
Merge branch 'develop' of github.com:boostorg/thread into develop
2017-01-25 08:13:22 +01:00
Vicente J. Botet Escriba
9347d9b731
Added Thread parameter in scoped_thread and thread_guard classes.
2017-01-25 08:13:04 +01:00
Andrey Semashev
b96d05461f
Compilation fixes for MinGW. Support for MSVC on ARM.
...
1. Apparently, some versions of MinGW declare interlocked intrinsics
without volatile qualifiers. To avoid compilation failures cast away
volatile from pointers. This should also work with qualified pointers as
well.
2. Changed interlocked read/write helpers for MSVC. VS2012 and later have
the option to change volatile behavior to the standard C++. In that mode,
volatile no longer enforces memory ordering. To ensure the correct
behavior of the helpers, use compiler barriers to prohibit code
reordering. Also, limit the version to x86 only.
3. Added a separate version of interlocked read/write helpers for MSVC on
ARM. To avoid dependency on the compiler switch, use intrinsics to load
and store values and also emit the hardware memory fence.
4. Added two versions of interlocked read/write helpers for gcc and
compatible compilers. One version is based on __atomic intrinsics, the
other one (for older versions) uses inline assembler. These versions
should be more optimal than the generic fallback.
2017-01-07 20:08:30 +03:00
Jürgen Hunold
050a45aaa4
Remove trailing ";"
...
clang warning: extra ';' after member function definition [-Wextra-semi]
2017-01-06 10:01:37 +01:00
Vicente J. Botet Escriba
23cff22e5a
fix category in thread_excaption.
2017-01-02 01:21:02 +01:00
equal-l2
3ac5fd0916
fix typo
...
Just in case
2016-12-20 06:27:06 +09:00
Vicente J. Botet Escriba
a0bda34054
fix typo in merge.
2016-11-04 00:52:59 +01:00
Antony Polukhin
184d7504b7
Fix minor possibility of loosing the notify
2016-11-02 23:13:26 +03:00
Wei-Ming Yang
7e7d3bf1a7
fix compile failed with boost::user_scheduler
...
The `work` is not in namespace `boost::thread_detail` anymore.
2016-10-24 08:24:25 +08:00
Vicente J. Botet Escriba
f8b76aa907
Merge pull request #103 from rick68/patch-8
...
fix relational operators of boost::synchronized_value<>
2016-10-22 23:47:09 +02:00
Wei-Ming Yang
e71f52f9ed
fix relational operators of boost::synchronized_value<>
...
fix incorrect relational operators.
2016-10-22 17:53:10 +08:00
Wei-Ming Yang
cd41de6e3f
fix boost::synchronized_value<>::load()
...
The data member `boost::synchronized_value<>::value_` is not mutable, so boost::synchronized_value<>::load() could not be const.
2016-10-22 17:18:28 +08:00
Vicente J. Botet Escriba
866ff746ae
fix queue_back/front_view: documentation mismatch
2016-09-06 20:10:50 +02:00
Vicente J. Botet Escriba
5450e98c6b
Use BOOST_THREAD_ASYNC_FUTURE_WAITS instead of BOOST_THREAD_FUTURE_BLOCKING and wait instead of join. See #11851 and #12220 .
2016-09-03 17:18:53 +02:00
Vicente J. Botet Escriba
c52a34c2cf
format.
2016-09-01 07:41:20 +02:00
Vicente J. Botet Escriba
fc748dbddf
12293- make the unwrap constructor explicit.
2016-08-20 09:27:47 +02:00
Vicente J. Botet Escriba
e34d343c12
avoid to unlock the mutext befote release_waiters.
2016-08-15 22:50:23 +02:00
Vicente J. Botet Escriba
63484911c6
fix compile error when INTERRUPTIONS are not provided.
2016-08-09 02:48:26 +02:00
Vicente J. Botet Escriba
bb2c38aa61
Fix result_of signature and unlonk before notyfying.
2016-08-09 02:47:22 +02:00
Vicente J. Botet Escriba
7ffdc5e10a
Merge pull request #90 from rick68/patch-3
...
fix a bug in try_lock_wrapper<>::operator=()
2016-08-07 13:05:40 +02:00
Vicente J. Botet Escriba
25864ce33a
Merge pull request #93 from vslavik/fix-shadowing-warnings
...
Fix variable shadowing warnings (Clang)
2016-08-07 13:04:09 +02:00
Vicente J. Botet Escriba
b511472614
Merge pull request #95 from rick68/patch-5
...
fix a mistake in boost::completion_latch
2016-08-07 13:00:31 +02:00
Vicente J. Botet Escriba
13c15cd002
Merge pull request #97 from rick68/patch-6
...
fix a mistake in sync_timed_queue<>::pull_until()
2016-08-07 12:58:22 +02:00
Wei-Ming Yang
9c80dd207e
fix a mistake in sync_timed_queue<>::pull_until()
...
The type of `super::not_empty_` in `sync_timed_queue<>` is `boost::condition_variable`, and the return type of `wait_until()` is `boost::cv_status`.
2016-07-31 12:12:55 +08:00
Wei-Ming Yang
96390e1b46
fix a mistake in boost::completion_latch
...
The constructor `completion_latch(std::size_t count, void(*funct)())` does not use any template arguments.
2016-07-26 07:39:10 +08:00
Václav Slavík
e2ff1e4c67
Fix variable shadowing warnings (Clang)
...
Fix multiple instance of declarations shadowing either local variables
or fields.
2016-07-24 22:03:07 +02:00
Andrey Semashev
96b96b4e42
Add shared_lock_guard to the included lock types
2016-07-13 14:42:06 +04:00
Wei-Ming Yang
a774cac3f2
fix a bug in try_lock_wrapper<>::operator=()
...
It invokes the copy constructor that already be deleted.
2016-07-13 15:34:01 +08:00
Wei-Ming Yang
850f3eced3
fix a bug in upgrade_to_unique_lock<>::operator=()
...
It invokes the copy constructor that already be deleted.
2016-07-13 12:42:20 +08:00
Wei-Ming Yang
e5c086cef4
fix typos in boost::upgrade_lock
...
Corrects the class name in exception messages.
2016-07-12 01:17:41 +08:00
Vicente J. Botet Escriba
0ef1b1b760
Merge pull request #83 from v4hn/spell-out-thread-ns
...
specify boost:: prefix for future threads
2016-05-26 07:39:30 +02:00
Michael Görner
ab9f931bce
specify boost:: prefix for future threads
...
This makes the usage of the boost::thread class consistent within the header
2016-05-26 01:18:16 +02:00
Marcel Raad
ccca616330
Fix Windows version problems
...
- the target Windows version was hardcoded to Windows 95
in thread.cpp if not already defined
- the include for BOOST_USE_WINAPI_VERSION was missing
2016-05-25 15:54:28 +02:00
Vicente J. Botet Escriba
ef401d81db
Merge branch 'develop' of github.com:boostorg/thread into develop
2016-04-20 23:59:40 +02:00
Vicente J. Botet Escriba
55a1325f30
call interrupt only if joinable.
2016-04-20 23:50:16 +02:00
Vicente J. Botet Escriba
640e1acb98
Merge pull request #78 from brycelelbach/patch-1
...
Fix typo in implementation detail namespace
2016-04-20 23:20:19 +02:00
Vicente J. Botet Escriba
411798367b
call on_desctruction on scoped_thread move assignment.
2016-04-17 23:41:21 +02:00
Vicente J. Botet Escriba
9db70b803d
add missing template parameter in wait_until.
2016-03-25 00:02:04 +01:00
Vicente J. Botet Escriba
317a735836
try to manage with #12036 .
2016-03-05 11:07:54 +01:00