Skip to content

Latest commit

 

History

History
59 lines (43 loc) · 1.17 KB

File metadata and controls

59 lines (43 loc) · 1.17 KB

swap

  • shared_mutex[meta header]
  • std[meta namespace]
  • shared_lock[meta class]
  • function[meta id-type]
  • cpp14[meta cpp]
void swap(shared_lock& u) noexcept;

概要

他のshared_lockオブジェクトと値を入れ替える

効果

shared_lockオブジェクトuが保持しているミューテックスの所有権を、自分のオブジェクトが保持しているミューテックスの所有権と入れ替える。

戻り値

なし

例外

投げない

#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;

    lock1.swap(lock2);

  } // lock1はunlock_shared()せず、lock2がunlock_shared()する
}
  • swap[color ff0000]
  • std::shared_timed_mutex[link /reference/shared_mutex/shared_timed_mutex.md]

出力

バージョン

言語

  • C++14

処理系