Tom
bc4e2b7881
AtomicCondition: add deduction guide for CTAD
...
Fixes clang warning '-Wctad-maybe-unsupported'.
2020-08-01 14:27:05 +02:00
Tom
1f8522952b
do not use CTAD for std-types if no deduction rule defined
...
Fixes clang warning '-Wctad-maybe-unsupported'.
2020-08-01 14:24:37 +02:00
Tom
311cb6e02a
SignalHandler: report signal number if sigaddset fails
2020-08-01 14:21:51 +02:00
Tom
f62a81797a
AtomicCondition: add wait*_value helpers
2020-07-17 23:37:33 +02:00
Tom
7636620625
SignalHandler: add helper async_sigwait_handler
2020-07-17 16:51:53 +02:00
Tom
346c835468
AtomicCondition: add helpers set_and_notify_{one,all}
2020-07-17 16:50:51 +02:00
Tom
e69a62cf9d
SignalHandler: add missing const
2020-07-17 15:46:06 +02:00
Tom
cc4305ace3
SignalHandler: mark destructor noexcept
2020-07-17 15:43:28 +02:00
Tom
9af897fa3b
v0.2
...
* Preserve interface of std::condition_variable through "perfect
forwarding"
* Decouple SignalHandler and AtomicCondition
* Callback function for signals
* Improve readme
* Bump version to v0.2
2019-10-13 15:00:20 +02:00
Tom
52dca2ac50
use typename
for template parameters
2019-10-02 16:59:22 +02:00
Tom
2a04dd5cc1
AtomicCondition: fix race condition, remove notify_{one,all}
...
* Fix race condition in wait_for between calling atomic load
and condition_variable::wait_for, by protecting atomic store
with same mutex as AtomicCondition::wait_for.
* Subsequently, simplify the interface by removing notify_{one,all}.
condition_varaiable::notify_all is now automatically called in
`AtomicCondition::set(val)`.
2019-09-23 12:04:28 +02:00
Tom
5708d49a1a
AtomicCondition: add wait_for with predicate, add notify_one
2019-09-16 18:07:58 +02:00
Tom
1146362559
AtomicCondition::wait_for: use std::chrono::duration
2019-09-16 18:07:20 +02:00
Tom
7dd4a1a075
AtomicCondition::{get,set} noexcept
2019-09-16 18:05:13 +02:00
Tom
88a7849c2c
ValueType of AtomicCondition does not have to be lock-free
2019-09-15 21:52:55 +02:00
Tom
544614b637
mark AtomicCondition::notify_all noexcept
...
std::condition_variable::notify_all is noexcept
2019-09-15 21:51:49 +02:00
Tom
076e77ff53
initial import
2019-09-14 22:41:56 +02:00