关闭

undefined reference to gettid() 错误

标签: 多线程linuxgettid
277人阅读 评论(0) 收藏 举报
分类:

《Linux多线程服务端编程》建议使用gettid(2)系统调用的返回值作为线程id。

写了个测试:

void * threadFunc(void *arg)
{
    pid_t tid = gettid();
    //...
}

编译出现错误:undefined reference to gettid()

网上查了一下,需要使用syscall的方式进行调用,于是简单封装了一蛤

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

参考:
1.http://blog.csdn.net/delphiwcdj/article/details/8476547
2.http://stackoverflow.com/questions/9565177/call-gettid-witin-glibc
3.http://blog.csdn.net/xsckernel/article/details/8543377

1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:397962次
    • 积分:10151
    • 等级:
    • 排名:第1666名
    • 原创:579篇
    • 转载:83篇
    • 译文:1篇
    • 评论:27条
    博客专栏
    最新评论