最終更新日時:
が更新

履歴 編集

function
<mutex>

std::timed_mutex::native_handle(C++11)

native_handle_type native_handle();

概要

ミューテックスのハンドルを取得する。

効果

この関数は、実装依存のミューテックスハンドルを返す。

  • Unix系環境におけるlibstdc++とlibc++では、pthreadライブラリのミューテックス型pthread_mutex_t*を表す。
  • Visual C++では、付属ライブラリの同時実行ランタイムの型concurrency::critical_section*を表す。ただし、native_handleの戻り値はそれをvoid*にキャストした値であり、native_handle_typevoid*である。

ハンドル型に対する操作は汎用的ではないため、環境依存のプログラミングが必要な場合に使用する。

戻り値

実装依存のミューテックスハンドル

// libstdc++(pthread)環境での、ミューテックスの優先順位上限取得
#include <iostream>
#include <mutex>
#include <pthread.h>

int main()
{
  std::timed_mutex mtx;

  // ミューテックスの優先順位上限を取得する
  int prioceiling = 0;
  pthread_mutex_getprioceiling(mtx.native_handle(), &prioceiling);

  std::cout << prioceiling << std::endl;
}

出力

0

バージョン

言語

  • C++11

処理系

参照