首页 > 编程语言 >C++ 通过 syscall 获取本线程 TID

C++ 通过 syscall 获取本线程 TID

时间:2022-12-14 17:45:37浏览次数:36  
标签:syscall top pid C++ 获取 线程 TID

通过 pthread_self 及 std::this_thread::getid函数获取的线程ID,跟使用top/htop命令呈现的线程ID不对应。
通过如下代码获取跟top/htop一致的TID:

#include <syscall.h>

pid_t gettid(void) {
    return (pid_t)syscall(SYS_gettid);
}

标签:syscall,top,pid,C++,获取,线程,TID
From: https://www.cnblogs.com/vaughnhuang/p/16982783.html

相关文章

  • 【Flask】flask-script, 自定义local支持线程和协程
    目录1.多app应用2.flask-script3.导出项目依赖4.函数和方法5.偏函数6.threading.local7.自定义local支持线程和协程8.flask请求上下文分析1.多app应用#之前咱......
  • C++ 如果设置日期 & 时间基础篇
        ......
  • [ Linux ] 线程控制(线程创建,等待,终止)
    在上一篇我们了解了Linux下线程的相关概念。而本篇的主要内容是线程控制。线程控制包括线程的创建,线程的终止,线程等待等问题,以及线程分离和Linux常见线程安全问题。1.线程控......
  • Java线程篇(十一):Fork/Join-Java并行计算框架
    并行是指系统内有多个任务同时执行,而并发是指系统内有多个任务同时存在,不同的任务按时间分片的方式切换执行,由于切换的时间很短,给人的感觉好像是在同时执行。 Java在JDK7......
  • Java线程篇(九):Condition-线程通信更高效的方式
      接近一周没更新《Java线程》专栏了,主要是这周工作上比较忙,生活上也比较忙,呵呵,进入正题,上一篇讲述了并发包下的Lock,Lock可以更好的解决线程同步问题,使之更面向对象,并......
  • Java线程篇(五):Timer和TimerTask
      Timer和TimerTask可以做为实现线程的第三种方式,前两中方式分别是继承自Thread类和实现Runnable接口。    Timer是一种线程设施,用于安排以后在后台线程中执行......
  • Java线程篇(六):线程池
    自JDK5之后,Java推出了一个并发包,​​java.util.concurrent​​,在Java开发中,我们接触到了好多池的技术,String类的对象池、Integer的共享池、连接数据库的连接池、Struts1.3的......
  • c++ 部署libtorch时对Tensor块的常用操作API
    一、前言使用pytorch可以很方便地训练网络,并且pytorch的官方网站中给出了很全的python对tensor的操作接口API,但是在部署libtorch的时候,c++对tensor的操作接口API资料甚少,......
  • 咸鱼学Java-多线程基础
    实现多线程的方法1.继承Thread,并且重写run方法(线程体)2.实现Runnable接口,实现run方法(线程体)必须重写run1.继承ThreadclassMyThreadextendsThread{publicMyThr......
  • spring boot创建多线程定时任务
    @Component@EnableScheduling//1.开启定时任务@EnableAsync//2.开启多线程publicclassMultithreadScheduleTask{@Async@Schedule......