并发和并行的区别

1.时间片

一个单核CPU的电脑上,我们可以同时听歌和执行代码。我么宏观上的感觉是歌曲的播放和代码的执行是同时发生的。但是实际上并不是。这一切的假象产生的原因就是CPU强大的运算执行能力和合理的时间片分配。一个CPU同一个时间点只能执行一个任务,它会给不同的程序分配不同的时间片,当时间过去之后,CPU就去执行其他的任务了。就是说其实单核CPU的情况下,我们听歌和执行代码其实也是也是有先后顺序的,只不过CPU给不同的程序分配的时间片很合理,从而让我们误以为是同时执行的。

2.并发

并发在单核CPU和多核CPU上面都有发生。但是他是一个单CPU运行多任务时的名词。他是指同一个时间段内,在同一个处理器上,有多个处于运行状态的任务,这个·CPU需要给这些任务分配时间片让他们交替执行。

3.并行

并行指的是多个处理器下,多个任务在同一个时间点上面同时执行。注意,是同一个时间点。

4.总结

通常现在我们在多核的电脑上编写Java程序。这个时候其实并发和并行是同时存在的。多个并发的任务之前需要竞争CPU分配的时间片资源。多个并行的任务是不需要竞争资源的。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值