sleeper_thread: allow interrupting sleep()
This keeps the function consistent with sleep_until() and sleep_for() which both can be interrupted. This is relevant to allow an update via a "signal" without an "interval" in a custom module.pull/2588/head
parent
eefd6e8336
commit
b8afde043c
|
@ -61,7 +61,7 @@ class SleeperThread {
|
|||
auto sleep() {
|
||||
std::unique_lock lk(mutex_);
|
||||
CancellationGuard cancel_lock;
|
||||
return condvar_.wait(lk);
|
||||
return condvar_.wait(lk, [this] { return signal_ || !do_run_; });
|
||||
}
|
||||
|
||||
auto sleep_for(std::chrono::system_clock::duration dur) {
|
||||
|
|
Loading…
Reference in New Issue