线程编程(一)

1.线程创建和退出
创建线程:pthread_create
退出线程:

  • 线程执行完毕
  • pthread_exit
    不可使用exit,会导致主进程退出,从而使所有线程退出。
    线程退出后,资源不一定能够得到立即释放,可以调用阻塞函数pthread_join,将当前线程挂起,等待线程的结束。调用它的函数将一直等待到被等待的线程结束为止,当函数返回时,被等待线程的资源就被收回。

函数说明:
所需头文件#include

函数原型
int pthread_create ((pthread_t *thread,
thread_attr_t *attr,
void (start_routine)(void *),
void *arg))

函数传入值
thread:线程标识符attr:线程属性设
函数返回值
start_routine:线程函数的起始地址arg:传递给start_routine的参数成功:0出错:-1
pthread_exit函数的语法要点

函数原型void pthread_exit(void *retval)函数传入值Retval:pthread_exit()调用者线程的返回值,可由其他函数如pthread_join 来检索获取

pthread_join函数的语法要点
所需头文件#include 函数原型int pthread_join ((pthread_t th, void **thread_return))

函数传入值
th:等待线程的标识符thread_return:用户定义的指针,用来存储被等待线程的返回值(不为NULL时)
函数返回值出错:-1
成功:0

你可能感兴趣的:(线程编程(一))