线程的属性设置
pthread_attr_setdetachstate 设置分离属性
pthread_attr_getdetachstate 获取该线程分离属性情况
pthread_getattr_np 获取整个线程的属性设置
pthread_t pthread_self 获取本线程ID
pthread_attr_getstacksize 获取线程栈的大小
pthread_attr_setstacksize 设置栈的大小
线程的属性初始化
线程的属性有很多,本文主要讲解几个常用的重要属性如何设置,如果想要设置线程属性功能,就必须诞生一个线程的属性结构体变量(pthread_attr_t),并且用pthread_attr_init去初始化这个变量,当用完之后用线程的pthread_attr_destroy去销毁掉线程的属性结构体。
typedef struct
{
int detachstate; //线程的分离状态
int schedpolicy; //线程调度策略
structsched_param schedparam; //线程的调度参数
int inheritsched; //线程的继承性
int scope; //线程的作用域
size_t guardsize; //线程栈末尾的警戒缓冲区大小
int stackaddr_set; //线程的栈设置
void* stackaddr; //线程栈的位置
size_t stacksize; //线程栈的大小
}pthread_attr_t;
如果想要设置线程的属性,需要调用以下线程属性初始化定义的该结构体结构体:
#include <pthread.h>
int pthread_attr_init(pthread_attr_t *attr);//线程属性结构体初始化
int pthread_attr_destroy(pthread_attr_t *attr);//线程属性结构体销毁
函数功能:
- pthread_attr_init(pthread_attr_t *attr); //线程属性结构体初始化
- pthread_attr_destroy(pthread_attr_t *attr); //线程属性结构体销毁