|
原型:
#include <pthread.h>
pthread_t pthread_self(void);
说明:
获取本进程自身的 ID。进程 ID 类型是 pthread_t ,这个类型一般为long long 型,8个字节。
测试代码:
#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>
void *thread_one ()
{
printf ("thread_one id is %lld\n", pthread_self());
}
void *thread_two()
{
printf ("thread_two id is %lld\n", pthread_self());
}
int main (int argc, char **argv)
{
pid_t pid;
pthread_t tid_one, tid_two;
if ((pid = fork()) == -1) {
perror ("fork");
exit (EXIT_FAILURE);
} else if (pid == 0) {
pthread_create (&tid_one, NULL, (void *)thread_one, NULL);
pthread_join (tid_one, NULL);
} else {
pthread_create (&tid_two, NULL, (void *)thread_one, NULL);
pthread_join (tid_two, NULL);
}
wait (NULL);
} 运行与输出: ./pthread_self
thread_one id is 3077766000
thread_one id is 3077766000 |
|