Thread::get_id()是C++ std::thread中的内置函数。这是一个观察者函数,表示它观察一个状态,然后返回相应的输出。该函数返回std::thread::id的值,从而标识与* this关联的线程。
用法:
thread_name.get_id();
参数:该函数不接受任何参数。
返回值:此方法返回std::thread::id类型的值,该值标识与* this关联的线程,即,返回用于调用get_id函数的线程。如果未标识此类线程,则返回默认构造的std::thread::id。
以下示例演示了std::thread::get_id()方法的使用:
注意:在在线IDE上,此程序将显示错误。要对此进行编译,请借助命令“ g ++ -std = c ++ 14 -pthread file.cpp”在g ++编译器编译中使用标志“-pthread”。
// C++ program to demonstrate the use of
// std::thread::get_id
#include <chrono>
#include <iostream>
#include <thread>
using namespace std;
// util function for thread creation
void sleepThread()
{
this_thread::sleep_for(chrono::seconds(1));
}
int main()
{
// creating thread1 and thread2
thread thread1(sleepThread);
thread thread2(sleepThread);
thread::id t1_id = thread1.get_id();
thread::id t2_id = thread2.get_id();
cout << "ID associted with thread1= "
<< t1_id << endl;
cout << "ID associted with thread2= "
<< t2_id << endl;
thread1.join();
thread2.join();
return 0;
}
可能的输出:
ID associted with thread1= 139858743162624 ID associted with thread2= 139858734769920
相关用法
- C++ Thread joinable()用法及代码示例
- C++ Thread hardware_concurrency()用法及代码示例
- C++ fma()用法及代码示例
- C++ log()用法及代码示例
- C++ div()用法及代码示例
- C++ iswalpha()用法及代码示例
注:本文由纯净天空筛选整理自Kushagra7744大神的英文原创作品 Thread get_id() function in C++。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。