簡體   English   中英

使用std :: condition_variable和std :: timed_mutex

[英]using std::condition_variable with std::timed_mutex

可能嗎? 我想使用timed_mutex而不是帶有condition_variable的常規互斥鎖,但是它不會編譯並查看源代碼

  void
  wait(unique_lock<mutex>& __lock, _Predicate __p)
  {
while (!__p())
  wait(__lock);
  }

(縮進由libc ++作者提供,真的嗎?)

因此,看起來它實際上僅限於直接互斥,而不是定時互斥。 但為什么??

是的, std::conditional_variable僅限於std::unique_lock<std::mutex> 但是,您可以將更通用的std::condition_variable_any用於具有兼容接口的任何東西。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM