c语言 标准多线程库,关于C语言多线程pthread库的功能描述

c语言 标准多线程库,关于C语言多线程pthread库的功能描述_第1张图片

与线程相关的说明

һpthread_t

pthread_t在头文件/usr/include/bits/pthreadtypes.h中定义:

typedef unsigned long int pthread_t;

它是一个线程标识符.

两个pthread_create

函数pthread_create用于创建线程,其原型为:

extern int pthread_create __P((pthread_t * __ thread,__const pthread_attr_t * __ attr,

无效*(* __ start_routine)(无效*),无效* __ arg));

第一个参数是指向线程标识符的指针,第二个参数用于设置线程属性,第三个参数是线程运行函数的起始地址,最后一个参数是运行函数的参数. 在这里,我们的函数线程不需要任何参数,因此最后一个参数设置为空指针. 我们还将第二个参数设置为空指针,这将生成具有默认属性的线程. 在下一节中,我们将详细介绍线程属性的设置和修改. 成功创建线程后,该函数返回0. 如果不为0,则意味着线程创建失败. 常见的错误返回码是EAGAIN和EINVAL. 前者表明系统限制了新线程的创建,例如c同时启动多个pthread,线程太多;后者表示第一个. 由两个参数表示的线程属性值是非法的. 成功创建线程后,新创建的线程将运行由参数三和参数四确定的功能,而原始线程将继续运行下一行代码.

c语言 标准多线程库,关于C语言多线程pthread库的功能描述_第2张图片

三个pthread_join pthread_exit

函数pthread_join用于等待线程结束. 函数原型为:

extern int pthread_join __P((pthread_t __th,void ** __ thread_retur

你可能感兴趣的:(c语言,标准多线程库)