Java并发编程四:并发(Concurrent)与并行(Parallel)区别(二)
2016-08-03 15:22
225 查看
这段时间在研究并发(Concurrent)与并行(Parallel)的区别,昨天写了 Java并发编程三:并发(Concurrent)与并行(Parallel)的区别(一),今天看到一篇我认为解释的非常形象的一篇文章,分享给大家。原文地址:Concurrent and Parallel Programming
to a five year old.
并发与并行的区别是什么呢?给一个五岁的孩子解释一下。
Concurrent = Two queues and one coffee machine.
Parallel = Two queues and two coffee machines.
并发=两个队列与一台咖啡机
并行=两个队列与两台咖啡机
在来看看昨天关于并发、并行的定义:
并发(Concurrent):是一种构造程序的方式,把任务分解为一个个独立运行的小任务。通信是协调这些小任务的手段。
并行(Parallel):以分组的方式,同时执行每一组并发任务。
两者的区别:并发是同时处理(dealing)很多的事情,并行是同时做(doing)很多的事情。
两个队列与一台咖啡机会产生并发问题,我们的解决方式有两种:
增加一台咖啡机,将其中一个队列分配给新增的咖啡机
将两个队列合并为一个队列,共用一台咖啡机
解决方式1是并行处理的,解决方式2是串行处理的。
给五岁的孩子解释并发与并行的区别
What’s the difference between concurrency and parallelism? Explain itto a five year old.
并发与并行的区别是什么呢?给一个五岁的孩子解释一下。
Concurrent = Two queues and one coffee machine.
Parallel = Two queues and two coffee machines.
并发=两个队列与一台咖啡机
并行=两个队列与两台咖啡机
在来看看昨天关于并发、并行的定义:
并发(Concurrent):是一种构造程序的方式,把任务分解为一个个独立运行的小任务。通信是协调这些小任务的手段。
并行(Parallel):以分组的方式,同时执行每一组并发任务。
两者的区别:并发是同时处理(dealing)很多的事情,并行是同时做(doing)很多的事情。
两个队列与一台咖啡机会产生并发问题,我们的解决方式有两种:
增加一台咖啡机,将其中一个队列分配给新增的咖啡机
将两个队列合并为一个队列,共用一台咖啡机
解决方式1是并行处理的,解决方式2是串行处理的。
总结
我认为并发是任务处理过程中面临的问题,将任务进行合理的分解,采用并行的方式解决问题。相关文章推荐
- 操作系统中并发(concurrent)与并行(Parallel )的区别与联系
- Java 多线程编程之一 进程与线程,并发和并行的区别
- Java 多线程编程之一 进程与线程,并发和并行的区别:吃馒头的比喻
- 并发Concurrent与并行Parallel的区别
- 并发(Concurrent) 与并行(Parallel) 的区别
- 并发(Concurrent)与并行(Parallel)的区别
- Java并发编程三:并发(Concurrent)与并行(Parallel)的区别(一)
- 并发(Concurrent)与并行(Parallel)的区别
- 并发(Concurrent)与并行(Parallel)的区别
- 并发(Concurrent)与并行(Parallel)的区别
- 并发 concurrent 与并行 parallel 的区别
- 并发Concurrent与并行Parallel的区别
- 并发(Concurrent)与并行(Parallel)的区别
- Java 多线程编程之一 进程与线程,并发和并行的区别:吃馒头的比喻
- 并行parallel和并发concurrent的区别
- 学习笔记:java并发编程学习之初识Concurrent
- 【Java并发编程】之六:Runnable和Thread实现多线程的区别(含代码)
- 【Java并发编程】之六:Runnable和Thread实现多线程的区别(含代码)
- 【Java并发编程】之六:Runnable和Thread实现多线程的区别(含代码)
- 并发(Concurrent)与并行(Parallel)