Java多线程知识点汇总(1)

12 篇文章 0 订阅
2 篇文章 0 订阅


回顾了一下多线程的知识点,为学习netty做准备

先给出概念性的东西:

进程:可并发执行的程序在一个数据集合上的一次运行过程,是分配资源和调度的独立单位

目的是为了加大程序执行的并发性,改善资源利用率和提高系统效率

多线程:是进程中能够并发执行的,处理器调度和分派的基本单位,进程组成部分。

临界区:并发进程中与共享变量有关的程序段成为“临界区”。

共享变量:共享变量所代表的资源称为“临界资源”

线程的几种状态:1、就绪;2、运行;3、等待


Dijkstra提出为了正确有效使用临界资源,共享变量的并发进程应遵守临界区调度的三个原则:

互斥使用,有空让进,忙则等待,有限等待,有限等待;择一而入,算法可行(不会因为所选的调度策略造成进程饥饿甚至死锁)


死锁:如果一个进程集合中的每个进程都在等待只能由此集合中的其他进程才能引发的时间,而无限期陷入僵持的局面成为死锁

死锁的四个必要条件:

1、互斥条件:系统中存在临界区资源,进程应互斥的使用这些资源

2、占有和等待条件:进程在请求资源得不到满足而等待,不释放已占有的资源

3、不剥夺条件:已被占用的资源只能有属性释放,不允许被其他进程剥夺

4、循环等待条件:存在循环等待链,其中每一个进程都在链中等待下一个进程所持有的资源,造成这组进程处于永远等待状态




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值