ubunt14+gcc4.8.4中實現gettid函數的辦法

今天寫了一個代碼需要輸出線程的id,結果發現我的環境中不支持gettid函數,經過查找資料,發現

https://blog.csdn.net/yun2205446823/article/details/50850058

這篇文章裏有解決辦法

要點如下

#define _GNU_SOURCE           //不加這個編譯會報錯,原因目前不清楚
#include <unistd.h>
#include <sys/syscall.h>                 /* For SYS_xxx definitions */

 

使用的時候寫

printf("tid : %ld\n",syscall(SYS_gettid));  //注意格式符是 ld 不是d,因爲我的環境裏tid_t的類型是long

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章