并发与并行的区别_并发执行和并行执行

并发与并行的区别_并发执行和并行执行学习多线程的时候会遇到一个名词:并发。这是属于操作系统中的词汇,需要了解并发和并行的区别,从网上搜集了几种说法帮助理解。一:并发是指一个处理器同时处理多个任务。并行是指多个处理器或者是多核的处理器同时处理多个不同的任务。并发是逻辑上的同时发生(simultaneous),而并行是物理上的同时发生。来个比喻:并发是一个人同时吃三个馒头,而并行是三个人同时吃三个馒头。二:并行

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

学习多线程的时候会遇到一个名词:并发。这是属于操作系统中的词汇,需要了解并发和并行的区别,从网上搜集了几种说法帮助理解。
一:
并发是指一个处理器同时处理多个任务。
并行是指多个处理器或者是多核的处理器同时处理多个不同的任务。
并发是逻辑上的同时发生(simultaneous),而并行是物理上的同时发生。
来个比喻:并发是一个人同时吃三个馒头,而并行是三个人同时吃三个馒头。
二:
并行(parallel):指在同一时刻,有多条指令在多个处理器上同时执行。就好像两个人各拿一把铁锨在挖坑,一小时后,每人一个大坑。所以无论从微观还是从宏观来看,二者都是一起执行的。
这里写图片描述
并发(concurrency):指在同一时刻只能有一条指令执行,但多个进程指令被快速的轮换执行,使得在宏观上具有多个进程同时执行的效果,但在微观上并不是同时执行的,只是把时间分成若干段,使多个进程快速交替的执行。这就好像两个人用同一把铁锨,轮流挖坑,一小时后,两个人各挖一个小一点的坑,要想挖两个大一点得坑,一定会用两个小时。
这里写图片描述

并行在多处理器系统中存在,而并发可以在单处理器和多处理器系统中都存在,并发能够在单处理器系统中存在是因为并发是并行的假象,并行要求程序能够同时执行多个操作,而并发只是要求程序假装同时执行多个操作(每个小时间片执行一个操作,多个操作快速切换执行)。
三:
当有多个线程在操作时,如果系统只有一个CPU,则它根本不可能真正同时进行一个以上的线程,它只能把CPU运行时间划分成若干个时间段,再将时间段分配给各个线程执行,在一个时间段的线程代码运行时,其它线程处于挂起状态.这种方式我们称之为并发(Concurrent)。

当系统有一个以上CPU时,则线程的操作有可能非并发.当一个CPU执行一个线程时,另一个CPU可以执行另一个线程,两个线程互不抢占CPU资源,可以同时进行,这种方式我们称之为并行(Parallel)。
这里写图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/203684.html原文链接:https://javaforall.net

(0)
上一篇 2025年8月10日 下午9:43
下一篇 2025年8月10日 下午10:22


相关推荐

  • Django(61)认证组件源码分析

    Django(61)认证组件源码分析认证组件源码入口APIView下的dispatch下的self.initial(request,*args,**kwargs),源码如下:definitial(self,request,

    2022年8月7日
    9
  • android studio报错Gradle project sync failed. Please fix your project and try again

    android studio报错Gradle project sync failed. Please fix your project and try againAndroidStudio导入项目或者新建项目想运行的时候可能会报错Gradleprojectsyncfailed.Pleasefixyourprojectandtryagain,原因应该是Gradle的一些东西没配好。这2个版本必须要保证本地有,而且一定要对得上。怎么知道本地有没有,下面2张图片展示他们各自的路径。(默认路径在安装AndroidS…

    2022年7月15日
    20
  • JS文本操作 Scripting.FileSystemObject

    JS文本操作 Scripting.FileSystemObjectScripting.FileSystemObject方法或者属性描述BuildPath()生成一个文件路径CopyFile()复制文件CopyFolder()复制目录CreateFolder()创建新目录CreateTextFile()生成一个文件DeleteFile()删除一个文件DeleteFolder()删

    2022年7月14日
    16
  • 活动图学习笔记

    活动图学习笔记活动图学习笔记活动图基本概念事件流除了用文本形式来表示外,还经常用活动图来表示。为什么有了文本形式以后还要开发这种框图形式呢?这是因为利用文本形式虽然很有用,但是如果事件流逻辑复杂,则文本形式比较难阅读和理解,利用框图将比文本形式来得更加有效。活动图显示与文本事件流相同的信息。我们在业务模型中用活动框图描述业务过程的工作流。活动图的组成要素活动图的组成要素主要有:起始点和终止点、活动、迁移、决策框、

    2022年5月3日
    47
  • 【ESP32接入国产大模型之腾讯混元】

    【ESP32接入国产大模型之腾讯混元】

    2026年3月13日
    2
  • Android文件系统的结构及目录用途、操作方法 整理「建议收藏」

    Android文件系统的结构及目录用途、操作方法 整理「建议收藏」1、android文件系统的结构android源码编译后得到system.img,ramdisk.img,userdata.img映像文件。其中,ramdisk.img是emulator的文件系统,system.img包括了主要的包、库等文件,userdata.img包括了一些用户数据,emulator加载这3个映像文件后,会把system和userdata分别加载到ram

    2022年10月15日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号