C++ 11 std :: this_thread - 如何取消sleep_until()?

waa*_*919 2 c++ multithreading sleep std c++11

有没有办法"取消":

std::this_thread::sleep_until(now + std::chrono::milliseconds(200));
Run Code Online (Sandbox Code Playgroud)

让我们假设以下场景:

我将我的线程设置为在200ms内唤醒...但是在10ms之后,我收到一个新请求,我的线程必须在100ms内唤醒...

所以线程应该唤醒:100ms然后是200ms(当然是在当前时间之后).

谢谢 :)

gra*_*olf 8

我认为你不能这样做sleep_until.查看条件变量(http://www.cplusplus.com/reference/condition_variable/condition_variable/).应该可以用于你想要的.