在Linux中,pthread_self函數用于獲取當前線程的線程ID(Thread ID)。
使用pthread_self函數的步驟如下:
#include <pthread.h>
。pthread_t
。以下是一個示例代碼:
#include <stdio.h>
#include <pthread.h>
void* threadFunc(void* arg) {
pthread_t tid = pthread_self();
printf("Thread ID: %lu\n", tid);
return NULL;
}
int main() {
pthread_t tid;
pthread_create(&tid, NULL, threadFunc, NULL);
pthread_join(tid, NULL);
return 0;
}
在上面的示例中,我們創建了一個線程,并在該線程的執行函數中調用pthread_self函數來獲取當前線程的線程ID。然后,將線程ID打印到控制臺。
注意:pthread_self函數返回的線程ID是無符號長整型(unsigned long int
)類型,所以在打印時需要使用%lu
格式化說明符。
編譯并運行上述示例代碼,將會輸出當前線程的線程ID。