pthread_join函数介绍和使用实例
2017-10-09 17:51
477 查看
一、pthread_join函数介绍:
函数pthread_join用来等待一个线程的结束,线程间同步的操作。头文件 : #include <pthread.h>
函数定义: int pthread_join(pthread_t thread, void **retval);
描述 :pthread_join()函数,以阻塞的方式等待thread指定的线程结束。当函数返回时,被等待线程的资源被收回。如果线程已经结束,那么该函数会立即返回。并且thread指定的线程必须是joinable的。
参数 :thread: 线程标识符,即线程ID,标识唯一线程。retval: 用户定义的指针,用来存储被等待线程的返回值。
返回值 : 0代表成功。 失败,返回的则是错误号。
二、使用实例。
1、实例代码:
#include <pthread.h> #include <stdlib.h> #include <unistd.h> #include <stdio.h> void *thread_function(void *arg) { int i; for ( i=0; i<8; i++) { printf("Thread working...! %d \n",i); sleep(1); } return NULL; } int main(void) { pthread_t mythread; if ( pthread_create( &mythread, NULL, thread_function, NULL) ) { printf("error creating thread."); abort(); } if ( pthread_join ( mythread, NULL ) ) { printf("error join thread."); abort(); } printf("thread done! \n"); exit(0); }
二、编译。
用gcc thread.c
-o thread.o -pthread 编译生成thread.o
三、执行。
用./thread.o 命令执行。
四、运行效果如下图:
相关文章推荐
- 多线程函数系列pthread_create(), pthread_join(), pthread_self(),pthread_exit(), pthread_detach()实例详解
- 多线程编程实例---pthread_join函数详解1
- linux C socket函数介绍和使用实例
- javascript(js) join函数使用方法介绍
- 多线程编程实例---pthread_join函数详解
- javascript(js) join函数使用方法介绍
- javascript(js) join函数使用方法介绍
- 多线程编程实例---pthread_join函数详解1
- 静态成员函数与pthread_create,纯虚函数匹配使用实例
- 静态成员函数与pthread_create,纯虚函数匹配使用实例
- js入门·循环与判断/利用函数的简单实例/使用对象/列举对象属性的名称
- 常用oracle函数使用实例
- MDX函数使用介绍(四):字符串函数&元组函数
- Asp中IsNumberic() isdate() cdate()函数使用实例
- MDX 函数的使用介绍
- 钩子技术介绍及函数使用
- js入门·循环与判断/利用函数的简单实例/使用对象/列举对象属性的名称
- MDX 函数的使用介绍(二):数值函数
- MDX函数使用介绍(四):字符串函数&元组函数
- MDX函数使用介绍(三):聚合函数