Java并发编程四:并发(Concurrent)与并行(Parallel)区别(二)
来源:互联网 发布:5s能用4g网络吗 编辑:程序博客网 时间:2024/05/22 11:45
这段时间在研究并发(Concurrent)与并行(Parallel)的区别,昨天写了 Java并发编程三:并发(Concurrent)与并行(Parallel)的区别(一),今天看到一篇我认为解释的非常形象的一篇文章,分享给大家。原文地址:Concurrent and Parallel Programming
给五岁的孩子解释并发与并行的区别
What’s the difference between concurrency and parallelism? Explain it
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是串行处理的。
总结
我认为并发是任务处理过程中面临的问题,将任务进行合理的分解,采用并行的方式解决问题。
1 0
- Java并发编程四:并发(Concurrent)与并行(Parallel)区别(二)
- Java并发编程三:并发(Concurrent)与并行(Parallel)的区别(一)
- 并发(Concurrent)与并行(Parallel)的区别
- 并发(Concurrent)与并行(Parallel)的区别
- 并发(Concurrent)与并行(Parallel)的区别
- 并发Concurrent与并行Parallel的区别
- 并发Concurrent与并行Parallel的区别
- 并发Concurrent与并行Parallel的区别
- 并发(Concurrent)与并行(Parallel)的区别
- 并发(Concurrent)与并行(Parallel)的区别
- 并发 concurrent 与并行 parallel 的区别
- 操作系统中并发(concurrent)与并行(Parallel )的区别与联系
- 并发(Concurrent)与并行(Parallel)
- 并发(Concurrent)与并行(Parallel)
- 串行(Sequential)、并发(Concurrent)、并行(parallel)与分布式(distributed)
- 并行(parallel)和并发(concurrency)
- 有关并发Concurrent and 并行Parallel
- Java并发编程Concurrent分析(上)
- snprintf函数用法及与sprintf比较
- webservice、soap、wsdl的理解
- mv 移动文件与目录,或更名
- 51nod:1079 中国剩余定理
- 锁与volatile的内存语义
- Java并发编程四:并发(Concurrent)与并行(Parallel)区别(二)
- epoll是linux内核新特性
- kill session 被标记为killed
- JDBC连接数据库并实现增删查改
- [刷题]算法竞赛入门经典(第2版) 4-5/UVa1590 - IP Networks
- 为什么360浏览器兼容模式文档模式默认以ie7标准渲染
- error 2664
- 突然想起来的一件小事。。。。
- 串之学密码学就一定的学程序