线程函数接口和属性

一、线程函数接口

2、pthread_exit

原型:void pthread_exit(void *retval);

功能:

结束线程任务

参数:

retval:线程结束时的值

返回值:

缺省

3、pthread_join

原型:int pthread_join(pthread_t thread, void **retval);

功能:

阻塞回收线程空间

参数:

thread:线程ID

retval:存放线程结束的状态空间的首地址

返回值:

成功返回0

失败返回非0

阻塞回收线程空间

实现线程的同步

4、pthread_attr_init

原型:int pthread_attr_init(pthread_attr_t *attr);

功能:

线程属性初始化为默认值

参数:

attr:存放线程属性空间首地址

返回值:

成功返回0

失败返回非0

5、 pthread_attr_destroy

原型:int pthread_attr_destroy(pthread_attr_t *attr);

功能:

线程属性销毁

参数:

attr:存放线程属性空间首地址

返回值:

成功返回0

失败返回非0

6、 pthread_attr_setdetachstate

原型:int pthread_attr_setdetachstate(pthread_attr_t *attr, int detachstate);

功能:

设置线程加入/分离属性

参数:

attr:存放线程属性空间首地址

detachstate:线程属性

PTHREAD_CREATE_DETACHED 分离属性

PTHREAD_CREATE_JOINABLE 加入属性

返回值:

成功返回0

失败返回非0

----使用示例

二、线程的属性 :

  1. 加入:线程结束后需要手动回收线程空间(pthread_join)

可以回收线程结束的状态

可以实现线程同步

  1. 分离:线程结束后自动回收线程空间

不需要手动回收空间,线程结束由系统自动回收

可以实现多任务先结束先被回收,后结束后被回收

相关推荐
死磕音视频9 小时前
让小模型做选择题:限定候选项并读取 logits 概率的入门实践(附 Python 代码)
开发语言·python·大模型·文本分类·transformers
Navigator_Z10 小时前
LeetCode //C - 1291. Sequential Digits
c语言·算法·leetcode
顽疲11 小时前
Java vue 养老系统源码详解:月账单 care_month_bill 与 Quartz 扣费 Job 实践
java·开发语言·vue.js·vue养老·springboot养老·java养老
Wang's Blog11 小时前
Java 项目实战: 交友项目 - 安装开发工具与环境准备
java·开发语言·交友
水饺编程13 小时前
第2章:Linux 基础,clear 命令
linux·c语言·汇编
程序喵大人13 小时前
【C++入门】编译链接模型 - 07 链接器怎样把符号对上号
开发语言·c++·编译器·编译链接·链接器
无敌贵点大王14 小时前
嵌入式软件面试经(自用)
c语言·stm32·单片机·学习·mongodb·面试·职场和发展
微三云 - 廖会灵 (私域系统开发)14 小时前
供应链系统实战:多渠道订单聚合与分布式库存一致性方案总结
开发语言·分布式·php
学逆向的14 小时前
C 数据溢出与精度丢失
c语言·开发语言·网络安全
霸道流氓气质14 小时前
AgentFlow 入门与实战:Task-Based 并发、EWMA 动态调度与四道门禁的 Java 生产级编排
java·开发语言