Linux线程-pthread_join
2012-09-19 22:10
411 查看
pthread_join用来等待另一个线程的结束,函数原型如下:
extern int pthread_join __P ((pthread_t __th, void **__thread_return));
这个调用之后,如果没有出错,会引起调用线程的阻塞,直到所等待的线程结束。这个调用的第一个参数很容易理解,表示需要等待哪个线程,第二个参数是我们自己定义的一个指针变量,用来存储所等待线程结束之后的返回值。
我们主要看一下这个变量可能是从哪来的,以pthread_exit为例,这个调用用来主动结束线程。函数原型如下:
extern void pthread_exit __P ((void *__retval)) __attribute__ ((__noreturn__));
可以看到这个函数有一个返回码retval,这个参数如果不空的话,会被直接传递给thread_return .
extern int pthread_join __P ((pthread_t __th, void **__thread_return));
这个调用之后,如果没有出错,会引起调用线程的阻塞,直到所等待的线程结束。这个调用的第一个参数很容易理解,表示需要等待哪个线程,第二个参数是我们自己定义的一个指针变量,用来存储所等待线程结束之后的返回值。
我们主要看一下这个变量可能是从哪来的,以pthread_exit为例,这个调用用来主动结束线程。函数原型如下:
extern void pthread_exit __P ((void *__retval)) __attribute__ ((__noreturn__));
可以看到这个函数有一个返回码retval,这个参数如果不空的话,会被直接传递给thread_return .
相关文章推荐
- pthread_join函数及linux线程
- pthread_join函数及linux线程
- pthread_join函数及linux线程
- pthread_join函数及linux线程
- pthread_join函数及linux线程
- linux线程,pthread_join和pthread_cleanup_push和pthread_cleanup_pop
- 关于Linux 线程pthread_join的用法
- linux学习值十四---线程终止pthread_exit()&pthread_join()
- pthread_join函数及linux线程
- Windows和Linux上分别怎样实现等待某个线程结束?---用WaitForSingleObject和pthread_join
- Linux下多线程编程__线程的创建pthread_create与退出pthread_exit,等待当前线程退出pthread_join,获取线程ID pthread_self
- pthread_join函数及linux线程
- Linux--多线程之线程连接pthread_join
- Linux线程-pthread_join
- pthread_join函数及linux线程转
- Linux线程之pthread_join
- pthread_join函数及linux线程
- linux线程之pthread_join
- pthread_join函数及linux线程
- Linux 线程--那一年, 我们一起忽视的pthread_join