网络通信-线程管理

本文介绍了线程的基本概念,强调其作为进程执行单位的轻量级特性。讨论了POSIX线程(pthread)的起源和标准,以及如何创建、管理线程。重点讲解了pthread_create()、pthread_join()、pthread_detach()等函数的用法,并探讨了线程的同步、异步执行方式,以及线程的终止条件。同时,提到了线程属性的设置和管理,为深入理解和应用线程提供基础。
摘要由CSDN通过智能技术生成

线程管理

一、基本概念

    1、线程是进程的执行路线,它是进程内部的控制序列,或者说线程是进程的一部分(进程是一个资源单位,线程是执行单位,线程是进程的一部分,负责真正的执行)

    2、线程是轻量级的,没有自己独立的代码段、数据段、bss段、堆、环境变量、命令行参数、文件描述符、信号处理函数、当前目录信息等资源

    3、线程有自己独立的栈内存、线程ID、错误码、信号屏蔽掩码

    4、一个进程中可以包含多个线程(多个执行路线),但是至少有一个线程在活动,称为主线程

    5、ps -T -p <pid> 查看pid进程中的线程情况 或者htop命令也可以查看

    6、线程是进程的实体,可以当做系统独立的任务调度和分配的基本单位

    7、线程有不同的状态、属性,系统提供了线程的控制接口,例如:创建、销毁、控制

    8、进程中的所有线程同在一个虚拟地址空间中,进程中的所有资源对于线程而言都是共享的,因此当多个线程协同工作时需要解决资源竞争问题(加锁)

    9、线程的系统开销很小、任务切换快,多个线程之间不需要数据交换、因此不需要类似于XSI的通信机制,因此使用线程简单而高效

    10、线程之间有优先级的差异

二、POSIX线程

    1、早期的UNIX和Linux系统没有线程概念,微软的Windows系统首先使用的线程,之后UNIX和Linux系统也逐渐增加了线程

    2、早期各个厂商有自己私有的线程库,而且接口的实现差异较大,不利于移植,世界标准化组织与1995年,制定了统一的线程接口标准规范,遵循该标准的线程称为POSIX线程,简称pthr

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值