• Class / Function / Type

      std::
    • Header file

      <>
    • Other / All

    最終更新日時(UTC):
    が更新

    履歴 編集

    function template
    <mutex>

    std::swap (非メンバ関数)

    namespace std {
      template <class Mutex>
      void swap(unique_lock<Mutex>& x, unique_lock<Mutex>& y) noexcept;
    }
    

    概要

    2つのunique_lockオブジェクトを入れ替える

    効果

    x.swap(y);
    

    戻り値

    なし

    例外

    投げない

    #include <mutex>
    #include <utility>
    
    int main()
    {
      std::mutex mtx;
      {
        std::unique_lock<std::mutex> lk1(mtx);
        std::unique_lock<std::mutex> lk2;
    
        std::swap(lk1, lk2);
    
      } // lk1はunlock()せず、lk2がunlock()する
    }
    

    出力

    バージョン

    言語

    • C++11

    処理系

    参照