pthread exit
时间: 2023-09-01 09:07:32 浏览: 153
pthread_exit()是一个函数,它用于在线程执行完毕后退出线程。当线程执行完毕后,可以调用pthread_exit()来通知系统释放线程资源并退出线程。
在使用pthread_exit()时,可以传递一个参数作为线程的返回值。这个返回值可以在其他线程中使用pthread_join()来获取。
示例代码如下:
```c
#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>
void *thread_func(void *arg) {
int value = *((int *)arg);
printf("Thread value: %d\n", value);
pthread_exit(NULL); // 退出线程
}
int main() {
pthread_t tid;
int value = 10;
pthread_create(&tid, NULL, thread_func, (void *)&value);
pthread_join(tid, NULL); // 等待线程执行完毕
printf("Thread completed.\n");
return 0;
}
```
在上面的示例中,我们创建了一个线程,传递了一个整数值给线程函数。线程函数打印这个整数值,并调用pthread_exit()退出线程。在主函数中,我们使用pthread_join()来等待线程执行完毕。最后打印"Thread completed."表示线程已经完成。
阅读全文