java中并发和并行的概念
小妮浅浅
2021-05-07 17:18:336242浏览 · 0收藏 · 0评论
由于任务数量远远超过CPU核心数量,因此操作系统会自动把任务调度到每个核心上执行。
1、概念
并发:多个进程在一个CPU下采用时间片轮转方式,在一段时间内,让多个进程得以推进,类似“雨露均沾”思想,一个CPU在短时间内会自动调度不同任务。
并行:多个任务在多个CPU分别同时运行,这称之为并行。
2、区分
操作系统中将并发性与并行性做明显区分,主要从微观角度而言:
并发性:单处理机情况下,多个进程在同一时间间隔运行
并行性:多处理机情况下,多个进程同时运行
举个例子理解并发与并行机制:
客户去银行办理业务
并发性:为了让银行服务人员更好地服务客户,规定每个客户的业务办理时间(防止其他客户长时间等待),银行服务人员将时间片轮转思想应用到客户业务中,当该客户业务的办理时间到达规定时间,银行人员暂停当前业务随之去办理下一个客户的业务,该客户等待下一次时间片的到来。从长时间来看,因为时间片较短,一个银行服务人员被认为可同时服务多个客户,这就可以理解为基于时间片的进程轮转管理机制,就是所谓的并发性。
并行性:银行如果非常有钱,雇佣了很多的工作人员,此时一个客户就会有一个工作人员对接,所有客户的业务真正实现了同时处理,这种机制就称为并行性。
以上就是java中并发和并行的概念介绍,希望对大家有所帮助。更多Java学习指路:Java基础
关注公众号,随时随地在线学习
相关文章