用prctl给线程命名 【源码实现】
来源:互联网 发布:经济学博士申请 知乎 编辑:程序博客网 时间:2024/06/03 09:26
用prctl给线程命名
可以用prctl给进程内其它线程命名的接口,测试代码如下:
#include <stdio.h>
#include <pthread.h>
#include <sys/prctl.h>
#include <unistd.h>
void* pFunc(void *arg)
{
char name[32];
prctl(PR_SET_NAME, (unsigned long)"xx");
prctl(PR_GET_NAME, (unsigned long)name);
printf("%s\n", name);
while (1)
sleep(1);
}
int main(void)
{
pthread_t tid;
pthread_create(&tid, NULL, pFunc, NULL);
pthread_join(tid, NULL);
return 0;
}
makefile:
.PHONY: all
all: thread
thread : thread.cpp
g++ -ggdb -Wall -lpthread -o thread thread.cpp
clean:
rm -f thread *.swp
看thread进程,但是还看不到线程信息
beauty@linux-gznp:~/code/test> ps aux | grep thread | grep beauty | grep -v grep
beauty 8364 0.0 0.3 10872 904 pts/2 Sl 03:24 0:00 ./thread
再给ps加几个参数就ok了。
ps -L -p `ps aux | grep thread | grep $USER | grep -v grep | awk '{print $2}'`
PID LWP TTY TIME CMD
8364 8364 pts/2 00:00:00 thread
8364 8365 pts/2 00:00:00 xx
这里的-L,也可以使用-T,只是打出的详细信息有点儿不同。具体如下:
-L Show threads, possibly with LWP and NLWP columns
-T Show threads, possibly with SPID column
转自:http://www.cppblog.com/beautykingdom/archive/2009/11/08/100419.html
- 用prctl给线程命名 【源码实现】
- 用prctl给线程命名
- 用prctl给线程命名
- 用prctl给线程命名
- 用prctl给线程命名
- 用prctl给线程命名
- 用prctl给线程命名
- 用prctl给线程命名
- 用prctl给线程命名
- linux c用prctl给线程命名
- 用prctl定制你的线程
- 给线程命名
- 如何给线程命名
- SetThreadName & GetThreadName 给线程命名
- prctl
- prctl
- prctl 设置线程名字,可以方便调试
- 网络命名空间(内核源码实现)
- overridePendingTransition的简介
- 电子邮箱的各种协议
- C语言中空格和\0的区别
- windows环境变量的备份与恢复
- hdu1401 Solitaire
- 用prctl给线程命名 【源码实现】
- PL/SQL Developer登录不进去,总是报用户名密码有误
- 从装机到hadoop完全分布式
- Sql Server 生成32位uuid
- C++回顾之运算符重载
- JVM调优总结
- JBPM4环境搭建
- axis 部署及获取webService接口
- Cron Expressions——Cron 表达式