native_handle_type native_handle();
概要
スレッドのハンドルを取得する
効果
この関数は、実装依存のスレッドのハンドルを返す。
- Unix系環境におけるlibstdc++とlibc++では、
pthread_t
を表す。 - Visual C++では、Windowsのスレッドハンドル
HANDLE
を表す。ただし、native_handle_type
はvoid*
型の別名である。HANDLE
もvoid*
型の別名であり、別途<windows.h>
または<wtypes.h>
をインクルードするとHANDLE
型が使用できる。
ハンドル型に対する操作は汎用的ではないため、環境依存のプログラミングが必要な場合に使用する。
戻り値
実装依存のスレッドハンドル
例
#include <thread>
#include <iostream>
#include <windows.h>
void func() {
std::cout << "func" << std::endl;
}
int main() {
std::thread t(func);
SetThreadPriority(t.native_handle(), THREAD_PRIORITY_IDLE);
t.join();
}
出力
func
バージョン
言語
- C++11
処理系
- Clang: ??
- GCC: ??
- ICC: ??
- Visual C++: 2012 ✅, 2013 ✅, 2015 ✅