linux下线程以及pthread库
2021-02-11 07:18
标签:nbsp 创建失败 资源 静态 struct 描述 优先级 缺点 nis 一.概述 linux中不区分进程和线程,都认为是个任务,都是创建一个task_struct.如何区分?线程是共享相同地址空间,而进程是独占地址空间. 多线程共享同一进程的地址空间 优点: 通信方便,可以通过全局变量. 缺点: 访问共享数据时需要考虑同步和互斥. 二.线程共享资源: 可执行的指令 静态数据 进程中打开的文件描述符 当前工作目录 用户ID 用户组ID 三.线程私有资源: 线程ID PC(程序计数器)和相关寄存器:保证不同线程执行不同的代码. 堆栈 错误号 优先级 执行状态和属性 四.Linux线程库: pthread线程库:(POSIX) 1.创建线程: 2.回收线程(pthread_join): pthread_join(pthread_t thread, void **retval) *retval接收线程thread函数对应的返回值,比如return返回的值或者pthread_exit中的retval.(两者是等效的) 3.结束线程(pthread_exit): 结束当前线程,而exit是结束当前的进程. pthread_exit(void *retval)相当于return retval;可以是各种类型. retval可被其他线程通过pthread_join获取. 示例: linux下线程以及pthread库 标签:nbsp 创建失败 资源 静态 struct 描述 优先级 缺点 nis 原文地址:https://www.cnblogs.com/Stephen-Qin/p/12737699.html#include
文章标题:linux下线程以及pthread库
文章链接:http://soscw.com/index.php/essay/53945.html