线程函数接口和属性

一、线程函数接口

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. 分离:线程结束后自动回收线程空间

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

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

相关推荐
kkeeper~几秒前
0基础C语言积跬步之内存函数
c语言·开发语言
吃好睡好便好1 分钟前
在Matlab中绘制杆状图
开发语言·学习·算法·matlab·信息可视化
Chen_harmony4 分钟前
【习题04】计算求和
c语言
桀人5 分钟前
C++——内存管理——new和delete的超详细解析
开发语言·c++
Shadow(⊙o⊙)6 分钟前
Shell进程替换,自定义Shell解释器——字符串库函数灵活操作!
linux·运维·服务器·开发语言·c++·学习
数智工坊17 分钟前
PyCharm 运行 Python 脚本总自动进 Test 模式?附 RT-DETRv2 依赖缺失终极排坑
开发语言·ide·人工智能·python·pycharm
再写一行代码就下班19 分钟前
根据给定word模板,动态填充指定内容,并输出为新的word文档。(${aa}占位符方式且支持循环动态表格)
java·开发语言
七夜zippoe19 分钟前
DolphinDB流数据表:创建与订阅
开发语言·订阅··dolphindb·数据表
彦为君35 分钟前
JavaSE-05-字符串(全面深入)
java·开发语言·python·ai·ai编程
charlie1145141911 小时前
现代C++特性指南(4)——完美转发与移动语义实战
开发语言·c++·现代c++