std:: condition_variable_any
| 
 | 
 | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
           定义于头文件
            
            
             <condition_variable>
            
            | ||
| 
           
            
             class
            
            condition_variable_any
            
             ;
            
           
           | (C++11 起) | |
       
        condition_variable_any
       
       类是
       
        
         std::condition_variable
        
       
       的泛化版本。虽然
       
        
         std::condition_variable
        
       
       仅能用于
       
        
         
          std::
          
           unique_lock
          
         
        
        
         <
        
        
         
          std::
          
           mutex
          
         
        
        
         >
        
       
       ,但
       
        condition_variable_any
       
       可以操作任何满足
       
        
         BasicLockable
        
       
       要求的锁类型。
      
请参阅 std::condition_variable 了解条件变量的语义说明。
       类
       
        std::condition_variable_any
       
       属于
       
        
         标准布局类型
        
       
       。它不满足
       
        
         可复制构造
        
       
       、
       
        
         可移动构造
        
       
       、
       
        
         可复制赋值
        
       
       或
       
        
         可移动赋值
        
       
       的要求。
      
如果锁是 std:: unique_lock < std:: mutex > , std::condition_variable 可能提供更好的性能。
| 目录 | 
成员函数
| 构造对象 (公开成员函数) | |
| 析构对象 (公开成员函数) | |
| 
           
            
             operator=
            
           
           
           
            
             
              [deleted]
             
            
           
           | 不可复制赋值 (公开成员函数) | 
| 通知 | |
| 通知一个等待线程 (公开成员函数) | |
| 通知所有等待线程 (公开成员函数) | |
| 等待 | |
| 阻塞当前线程直至条件变量被唤醒 (公开成员函数) | |
| 阻塞当前线程直至条件变量被唤醒或超过指定时限 (公开成员函数) | |
| 阻塞当前线程直至条件变量被唤醒或抵达指定时间点 (公开成员函数) | |
注释
       
        std::condition_variable_any
       
       可与
       
        
         std::shared_lock
        
       
       配合使用,以便在共享所有权模式下等待
       
        
         std::shared_mutex
        
       
       。
      
       
        std::condition_variable_any
       
       的一个潜在用途是配合自定义的
       
        
         Lockable
        
       
       类型实现可中断等待:自定义的锁定操作会按预期锁定关联的互斥锁,同时完成必要设置,以便在接收到中断信号时通知此条件变量。
       
        
         [1]
        
       
      
参见
| 
           
            
             
              (C++11)
             
            
           
           | 提供与
         
          
           std::unique_lock
          
         
         关联的条件变量 (类) | 
外部链接
| 
 |