最終更新日時:
が更新

履歴 編集

function
<shared_mutex>

std::swap (非メンバ関数)(C++14)

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

概要

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

効果

x.swap(y);

戻り値

なし

例外

投げない

#include <shared_mutex>

int main()
{
  std::shared_timed_mutex mtx;
  {
    std::shared_lock<std::shared_timed_mutex> lock1(mtx);
    std::shared_lock<std::shared_timed_mutex> lock2;

    std::swap(lock1, lock2);

  } // lock1はunlock_shared()せず、lock2がunlock_shared()する
}

出力

バージョン

言語

  • C++14

処理系