zoukankan      html  css  js  c++  java
  • boost::thread 线程锁

    1.boost锁的概述:

      boost库中提供了mutex类与lock类,通过组合可以轻易的构建读写锁与互斥锁。

    2.mutex对象类(主要有两种):

      1.boost::mutex(独占互斥类) --> 有lock和unlock方法

      2.boost::shared_mutex(共享互斥类) --> 有lock和unlock方法 And shared_lock和shared_unlock方法

    3. lock模板类:

      1.boost::unique_lock<T>(独占锁) : unique_lock<T>中的 T 可以为mutex类中的 任意 一种; 自动调用lock和unlock方法

      2.boost::shared_lock<T>(共享锁) : shared_lock<T>中的 T 只能是shared_mutex类; 自动调用shared_lock和shared_unlock方法

    4.递归式的互斥量:

      

      boost::mutex::scoped_lock

      boost::mutex io_mutex;

      void foo( )

      {

              {

                      boost::mutex::scoped_lock lock( io_mutex );         /// 锁定

              } /// 解锁

      }

    5.设置锁超时:

      boost::unique_lock<boost::timed_mutex> lk( io_mutex , std::chrono::milliseconds(3) ); // 超时3秒

  • 相关阅读:
    4组Beta冲刺1/5
    4组Beta冲刺总结
    4组Beta冲刺2/5
    4组Beta冲刺4/5
    4组Beta冲刺5/5
    4组Alpha冲刺6/6
    软工实践个人总结
    4组Alpha冲刺6/6
    4组Beta冲刺3/5
    4组Alpha冲刺总结
  • 原文地址:https://www.cnblogs.com/wuchunming/p/3793080.html
Copyright © 2011-2022 走看看