线程的定义和详解

线程是进程的一部分,描述指令流执行状态,是CPU调度的基本单元。线程允许并发执行,共享地址空间,但一个线程的崩溃可能导致进程所有线程的崩溃。线程创建和切换时间比进程短,减少了时间和空间开销。线程实现方式包括用户线程(不依赖内核,系统调用阻塞会影响整个进程)、内核线程(由内核管理,开销大但独立阻塞)和轻权进程(结合用户线程和内核线程的优点)。
摘要由CSDN通过智能技术生成

一、首先思考为什么要引入线程?

先来看一个例子:

因为我们知道I/O读取和CPU解压是可以同步进行的,若按上面的程序顺序执行的话,若系统性能足够好,读取速度和解压速度足够快一般是不会有影响的,但是若I/O的读取的速度跟不上时,可能无法连续的播放,因此我们考虑是否可以让可以并发执行的一些程序并发执行。

如下图我们可以采用多进程的实现方法。

但是若按照上面那样执行则会存在两个问题:

(1).这些进程之间如何通信,如何共享数据?

(2).系统开销较大:需要创建进程、进程结束、进程切换。

因此根据以上问题我们对进程提出了如下改进,在进程中增加一类实体,满足以下特性:

&#

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值