pthread_t
是一個數據類型,在 Linux 多線程編程中,它表示一個線程的標識符
當你使用 POSIX 線程庫(pthread)創建一個新線程時,你需要提供一個 pthread_t
類型的變量來存儲新線程的標識符。這個標識符可以用于后續的線程操作,例如等待線程結束(pthread_join
)或者取消線程(pthread_cancel
)等。
下面是一個簡單的示例,展示了如何使用 pthread_create
函數創建一個新線程,并將其標識符存儲在 pthread_t
類型的變量中:
#include<stdio.h>
#include <stdlib.h>
#include <pthread.h>
void* my_thread(void *arg) {
printf("Hello from thread!\n");
return NULL;
}
int main() {
pthread_t thread_id;
int rc;
rc = pthread_create(&thread_id, NULL, my_thread, NULL);
if (rc != 0) {
perror("Failed to create thread");
exit(1);
}
printf("Thread created with ID: %lu\n", (unsigned long)thread_id);
pthread_join(thread_id, NULL);
return 0;
}
在這個示例中,我們定義了一個名為 my_thread
的線程函數,然后在 main
函數中創建了一個新線程,并將其標識符存儲在 pthread_t
類型的變量 thread_id
中。接著,我們使用 pthread_join
函數等待新線程結束。