并发与并行

来源:互联网 发布:网络教育统考作弊 坐牢 编辑:程序博客网 时间:2024/06/05 23:45

并发与并行

@(JAVA)[java]

concurrent: 并发, 多个线程协同做同一件事情(有状态)

parallel: 并行, 多个线程各做各的事情(互相间无共享状态)

并发和并行的区别就是一个处理器同时处理多个任务和多个处理器或者是多核的处理器同时处理多个不同的任务。

前者是逻辑上的同时发生(simultaneous),而后者是物理上的同时发生.

来个比喻:并发和并行的区别就是一个人同时吃三个馒头和三个人同时吃三个馒头。

举个例子:
1、并发:一个CPU core同时在不同的时间片处理不同的事情,如java的concurrent包。
2、并行:多个CPU core,甚至多个机器协同处理一件事的不同部分叫做并行,如hadoop。

原创粉丝点击