Java线程的并发及并行

并发与并行的区别

并发是指多个线程操作同一个资源,不是同时执行,而是交替执行。单核CPU,只不过因为CPU的时间片很短,速度太快,看起来是同时执行。

并行才是真正的同时执行,多核CPU。每个线程使用一个单独的CPU的资源来运行。

并发示意图:
在这里插入图片描述
并行示意图:
在这里插入图片描述
但在多数情况下,我们的即使有多核,也同样存在并行的情况,且存在并行与并发同时存在的情况。

并发概念

Java并发的重要性毋庸置疑,可以最大化的提高计算资源的效率。

并发是多线程交替的访问同一个资源,该资源本身的特点是同一时刻只允许一个线程的访问,那么就存在竞争的问题。同一个资源可以是CPU资源,也可以是内存资源。

临界资源和临界区

临界资源:一般指内存资源,一个时刻只允许一个进程(在java中,是线程)访问,一个线程正在使用临界资源的时候,另一个线程不能使用。临界资源是非可剥夺性资源,即使是操作系统(或JVM)也无法阻止这种资源的独享行为。
临界区:是一种线程中访问临界资源的那段<

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值