获取线程pid和ps、top显示的pid相同的做法
来源:互联网 发布:数据清洗怎么做? 编辑:程序博客网 时间:2024/05/12 11:43
#include <sys/syscall.h> #define gettid() syscall(__NR_gettid)//在线程中调用获取pid值与top、ps显示的pid相同printf("tidrx pid2 is [%lu]\n", gettid());//获取的pid是线程实际pid,与Linux kernel pid不同printf("tidrx pid is [%lu]\n", pthread_self());
线程库实际上由两部分组成:内核的线程支持+用户态的库支持(glibc)
Linux在早期内核不支持线程的时候,glibc就在库中(用户态)以线程(就是用户态线程)的方式支持多线程了,POSIX thread只要求了用户编程的调用接口,对内核接口没有要求。
linux上的线程实现就是在内核支持的基础上以POSIX thread的方式对外封装了接口,所以才会有两个ID的问题。
使用gettid()就可以获取到线程id对应的内核pid了
0 0
- 获取线程pid和ps、top显示的pid相同的做法
- 如何获取linux内核线程的pid?
- ps命令获取对应的pid及其余信息
- 获取输入设备的vid和pid
- python创建子进程 proc.pid(),打印出子进程PID,打印出的进程号,和top显示的相差1
- 深入分析进程PID相同的奥秘
- 获取打开文件的PID
- linux 获取pid的命令
- linux C 获取pid终极父进程的PID
- usb的pid和vid
- usb的pid和vid
- USB的VID和PID
- usb的pid和vid
- 获取指定USB设备的VID PID和SerialNumber
- 获取指定USB设备的VID PID和SerialNumber
- LINUX使用ps命令获取对应PID
- 阿里妈妈账号PID和淘宝账号PID的区别
- JAVA线程dump的分析 --- jstack pid
- HDU 1520Anniversary party 树形dp
- Python系列(一)转义字符
- 关于mysql锁表的几种形式
- 为MT7688 SPI添加N个SPI接口
- 关于c++常量定义
- 获取线程pid和ps、top显示的pid相同的做法
- ubuntu之设置时区和在线同步时间
- top.location != self.location
- SQL Server 2008 R2数据挖掘即学即用
- Delphi COM编程技术三类型库
- Python多线程学习
- Coursera机器学习第8周作业
- 不改变默认布局样式让Android系统默认的标题栏消失
- 亿级Web系统搭建——单机到分布式集群