当前位置:网站首页>并发与并行的区别
并发与并行的区别
2022-07-30 19:52:00 【一缕阳光a】
学习多线程的时候会遇到一个名词:并发。这是属于操作系统中的词汇,需要了解并发和并行的区别,从网上搜集了几种说法帮助理解。
一:
并发是指一个处理器同时处理多个任务。
并行是指多个处理器或者是多核的处理器同时处理多个不同的任务。
并发是逻辑上的同时发生(simultaneous),而并行是物理上的同时发生。
来个比喻:并发是一个人同时吃三个馒头,而并行是三个人同时吃三个馒头。
二:
并行(parallel):指在同一时刻,有多条指令在多个处理器上同时执行。就好像两个人各拿一把铁锨在挖坑,一小时后,每人一个大坑。所以无论从微观还是从宏观来看,二者都是一起执行的。

这里写图片描述
并发(concurrency):指在同一时刻只能有一条指令执行,但多个进程指令被快速的轮换执行,使得在宏观上具有多个进程同时执行的效果,但在微观上并不是同时执行的,只是把时间分成若干段,使多个进程快速交替的执行。这就好像两个人用同一把铁锨,轮流挖坑,一小时后,两个人各挖一个小一点的坑,要想挖两个大一点得坑,一定会用两个小时。
这里写图片描述
并行在多处理器系统中存在,而并发可以在单处理器和多处理器系统中都存在,并发能够在单处理器系统中存在是因为并发是并行的假象,并行要求程序能够同时执行多个操作,而并发只是要求程序假装同时执行多个操作(每个小时间片执行一个操作,多个操作快速切换执行)。
三:
当有多个线程在操作时,如果系统只有一个CPU,则它根本不可能真正同时进行一个以上的线程,它只能把CPU运行时间划分成若干个时间段,再将时间段分配给各个线程执行,在一个时间段的线程代码运行时,其它线程处于挂起状态.这种方式我们称之为并发(Concurrent)。
当系统有一个以上CPU时,则线程的操作有可能非并发.当一个CPU执行一个线程时,另一个CPU可以执行另一个线程,两个线程互不抢占CPU资源,可以同时进行,这种方式我们称之为并行(Parallel)。
这里写图片描述
边栏推荐
- Perfectly Clear QuickDesk & QuickServer图像校正优化工具
- 看完《二舅》,我更内耗了
- Frog jumping steps (recursive and non-recursive) ------- Xiaolele walks the steps
- How to build FTP server under win2003
- Brush questions record----string
- Centos7 install mysql8
- Witness the magical awakening of the mini world in HUAWEI CLOUD
- MindSpore:对image作normalize的目的是什么?
- HarmonyOS笔记-----------(三)
- ELK log analysis system
猜你喜欢

MySQL六脉神剑,SQL通关大总结

ERROR 1045 (28000) Access denied for user ‘root‘@‘localhost‘解决方法

推荐系统:概述【架构:用户/物品特征工程---->召回层---->排序层---->测试/评估】【冷启动问题、实时性问题】

推荐系统:冷启动问题【用户冷启动、物品冷启动、系统冷启动】

Download Win11 how to change the default path?Download Win11 change the default path method

DCM 中间件家族迎来新成员

【PM专用】快速统计团队还有谁没有登记上报信息,快速筛选出属于自己项目组的成员,未完成XXX工作事项的名单

MySQL sub-database sub-table

360杜跃进:太空安全风险加剧,需打造一体化防御体系

用jOOQ 3.17投射类型安全的嵌套表记录
随机推荐
MySql密码
Different lower_case_table_names settings for server (‘1‘) and data dictionary (‘0‘) 解决方案
Brush questions record----string
英文字母间隔突然增大(全角与半角转换)
Mac安装PHP开发环境
【Node实现数据加密】
推荐系统-排序层:排序层架构【用户、物品特征处理步骤】
MindSpore:【Resolve node failed】解析节点失败的问题
“数字化重构系统,搞定 CEO 是第一步”
The advanced version of the cattle brushing series (search for rotating sorted arrays, inversion of the specified range in the linked list)
Centos7 install mysql8
MySQL eight-part text recitation version
MySQL数据库 ---MySQL表的增删改查(进阶)
MindSpore:数据处理问题
Swift简介
The technology is very powerful, do you still need to "manage up"?
来了!东方甄选为龙江农产品直播带货
Google's AlphaFold claims to have predicted almost every protein structure on Earth
Download Win11 how to change the default path?Download Win11 change the default path method
el-input can only input integers (including positive numbers, negative numbers, 0) or only integers (including positive numbers, negative numbers, 0) and decimals