C++多线程库的常用函数 std::this_thread::get_id()

格式:函数 + 头文件 + 用例 + 解释说明

函数:
std::this_thread::get_id()

头文件:

用例:
std::thread::id master_thread = std::this_thread::get_id();

另一种获取线程标识符 id 的办法:

线程标识类型为std::thread::id

可以通过调用std::thread对象的成员函数get_id()来直接获取。
如果std::thread对象没有与任何执行线程相关联,get_id()将返回std::thread::type默认构造值,这个值表示"无线程"。

练习代码:

#include
#include
#include

struct run{
    run(short num):m_num(num){}
    void operator()(){
        std::cout<<"run num is "<std::endl;
    }
private:
    short m_num;
};
int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);

    std::thread::id id = std::this_thread::get_id();
    std::cout<<"this thread id is "<std::endl;

    std::thread t(run(100));
    std::cout<<"thread t id is "<std::endl;
    t.join();
    return a.exec();
}

输出结果:

C++多线程库的常用函数 std::this_thread::get_id()

Original: https://www.cnblogs.com/azbane/p/15382699.html
Author: 我是张洪铭我是熊博士
Title: C++多线程库的常用函数 std::this_thread::get_id()

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/535454/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • C++:STL 标准模板库容器的使用

    一、简介 STL容器: –> STL:Standard Template Library 标准模板库。 –> 自动申请内容和释放内存,因此无需n…

    C++ 2023年5月29日
    053
  • 老牌C/C++ IDE——DEV C++有新的大版本了

    序: 这个软件也是有相当历史了,可以追溯到win98时代,1998年就已经发布第一版本了,其中4.9.9.2版本是最经典的,网上镜像应该是最多的,这个版本才10M大小,后面版本都是…

    C++ 2023年5月29日
    055
  • [UE4]虚幻引擎的C++环境安装

    一、一般使用VS2017开发 二、需要勾选”使用C++的游戏开发” posted on2019-03-08 17:02 一粒沙 阅读(2513 ) 评论()…

    C++ 2023年5月29日
    047
  • 设计模式C++实现——工厂模式

    软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大…

    C++ 2023年5月29日
    044
  • C++内存管理

    [ 导语] 内存管理是C++最令人切齿痛恨的问题,也是C++最有争议的问题,C++高手从中获得了更好的性能,更大的自由,C++菜鸟的收获则是一遍一遍的检查代码和对C++的痛恨,但内…

    C++ 2023年5月29日
    048
  • c++ 二进制方式读取文件 读取特殊类型数据

    1 #include 2 #include 3 using namespace std; 4 5 /* 6 二进制方式进行读写文件,可以读写 各种各样数据类型的数据 7 */ 8 …

    C++ 2023年5月29日
    072
  • Android JNI c/c++调用java 无需新建虚拟机

    近期通过研究SDL源码 得出android JNI c/c++调用java 无需新建虚拟机: 具体步骤如下 第一步获得:两个参数 JNIEnv和jclass void Java_c…

    C++ 2023年5月29日
    044
  • [C++] 浅拷贝和深拷贝

    浅拷贝只是简单的值拷贝; 深拷贝需要重新分配空间。 系统默认的拷贝构造函数属于浅拷贝。 输出结果为: HelloHelloWorldWorld 为什么修改对象 m 的值,对象 n …

    C++ 2023年5月29日
    064
  • C++函数模板template(模板函数)

    函数模板不是一个实在的函数,编译器不能为其生成可执行代码。定义函数模板后只是一个对函数功能框架的描述,当它具体执行时,将根据传递的实际参数决定其功能。 面向对象的继承和多态机制有效…

    C++ 2023年5月29日
    054
  • c++对象工厂

    一.简单工厂 #pragma once struct IObjectA { virtual void Test1()=0; }; class ObjectA:public IObj…

    C++ 2023年5月29日
    053
  • C++ #ifndef、#define、#endif作用

    在C++项目中,#ifndef、#define、#endif非常常见,接下来就来简单说一下它们的作用。 作用:防止头文件被重复引用,防止被重复编译。 简介: ifndef 它是if…

    C++ 2023年5月29日
    071
  • CLion之C++框架篇-优化框架,引入boost(三)

    背景 结合上一篇CLion之C++框架篇-优化框架,单元测试(二) ,继续进行框架优化!这一版优化引入一个我们日常经常使用的操作库Boost,估算使用频率在70%以上! Boost…

    C++ 2023年5月29日
    076
  • C++ 获取当前时间毫秒数

    在window环境下:1、精确到毫秒 include “stdafx.h” include include Original: https://www.cn…

    C++ 2023年5月29日
    052
  • Cannot find a C++ compiler that supports both C++11 and the specified C++ flags.

    Linux 安装 cmake 时候出现的问题,解决方法: yum install gcc-c++ Original: https://www.cnblogs.com/hunttow…

    C++ 2023年5月29日
    054
  • c++ effective总结(一)

    条款一:视c++为一个语言联邦 c++可以认为是由C,Object-Oriented C++(面向对象),Template C++(模板),STL(c++标准模板库)四种次语言组成…

    C++ 2023年5月29日
    079
  • VC++注册,卸载OCX控件,以及判断是否注册

    注册OCX控件 BOOL CYourClass::RegistOcx() HINSTANCE hLib = LoadLibrary(“NTGraph.ocx&#8221…

    C++ 2023年5月29日
    082
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球