最終更新日時:
が更新

履歴 編集

function
<shared_mutex>

std::shared_lock::unlock(C++14)

void unlock();

概要

共有ロックを手放す

効果

pm->unlock_shared();

pmはメンバ変数として保持している、ミューテックスオブジェクトへのポインタ

事後条件

owns_lock() == false

戻り値

なし

例外

この関数は、以下のerror conditionを持つsystem_error例外オブジェクトを送出する可能性がある:

#include <cassert>
#include <shared_mutex>

int main()
{
  std::shared_timed_mutex mtx;
  {
    // 共有ロックを取得する
    std::shared_lock<std::shared_timed_mutex> lock(mtx);

    // 共有ロックを手放す
    lock.unlock();

    assert(lock.owns_lock() == false);
  } // すでに共有ロックを手放しているので、
    // デストラクタではunlock_sharedされない
}

出力

バージョン

言語

  • C++14

処理系