精华内容
下载资源
问答
  • 摘要:并发并行是两个既相似而又不相同的概念:并发性,又称共行性,是指能处理多个同时性活动的能力;并行是指同时发生的两个并发事件,具有并发的含义,而并发则不一定并行,也亦是说并发事件之间不一定要同一...

    摘要:并发与并行是两个既相似而又不相同的概念:并发性,又称共行性,是指能处理多个同时性活动的能力;并行是指同时发生的两个并发事件,具有并发的含义,而并发则不一定并行,也亦是说并发事件之间不一定要同一时刻发生。

      并行介绍

      并行在操作系统中是指,一组程序按独立异步的速度执行,不等于时间上的重叠(同一个时刻发生)。

      并发介绍

      并发是指:在同一个时间段内,两个或多个程序执行,有时间上的重叠(宏观上是同时,微观上仍是顺序执行)。

      并发的实质是一个物理CPU(也可以多个物理CPU) 在若干道程序之间多路复用,并发性是对有限物理资源强制行使多用户共享以提高效率。

      操作系统并发程序执行的特点:

      并发环境下,由于程序的封闭性被打破,出现了新的特点: ①程序与计算不再一一对应,一个程序副本可以有多个计算

      ②并发程序之间有相互制约关系,直接制约体现为一个程序需要另一个程序的计算结果,间接制约体现为多个程序竞争某一资源,如处理机、缓冲区等。

      ③并发程序在执行中是走走停停,断续推进的

      并发和并行的作用

      通过并发和并行能够使得应用程序可以充分利用多核以及GPU的计算能力,从而提高应用程序的性能,比如在以下几个方面中:

      1.使用异步I/O操作可以提高应用程序的响应性。大多数的GUI应用程序都是用单个线程来控制所有UI界面的更新。UI线程不应该被占用过长时间,不然UI界面就会失去对用户的响应。

      2.跨多线程的并行工作可以更好的利用系统的资源。具有多CPU和GPU的现代计算机,通过并行可以指数级的提高CPU计算受限的应用程序的性能。

      3.同时执行多个I/O操作(如同时从多个网站上获取信息)可以提高总体的吞吐量(throughput),等待I/O相应的操作可以用来发起新的操作,或者是处理操作返回的结果。

      并行和并发区别

      区别一:

      并发是指一个处理器同时处理多个任务。并行是指多个处理器或者是多核的处理器同时处理多个不同的任务。并发是逻辑上的同时发生(simultaneous),而并行是物理上的同时发生。

      来个比喻:并发是一个人同时吃三个馒头,而并行是三个人同时吃三个馒头。

      区别二:

      并行(parallel):指在同一时刻,有多条指令在多个处理器上同时执行。就好像两个人各拿一把铁锨在挖坑,一小时后,每人一个大坑。所以无论从微观还是从宏观来看,二者都是一起执行的。

      并行和并发哪个好?并行和并发的概念和区别

      并发(concurrency):指在同一时刻只能有一条指令执行,但多个进程指令被快速的轮换执行,使得在宏观上具有多个进程同时执行的效果,但在微观上并不是同时执行的,只是把时间分成若干段,使多个进程快速交替的执行。这就好像两个人用同一把铁锨,轮流挖坑,一小时后,两个人各挖一个小一点的坑,要想挖两个大一点得坑,一定会用两个小时。

      并行和并发哪个好?并行和并发的概念和区别

      并行在多处理器系统中存在,而并发可以在单处理器和多处理器系统中都存在,并发能够在单处理器系统中存在是因为并发是并行的假象,并行要求程序能够同时执行多个操作,而并发只是要求程序假装同时执行多个操作(每个小时间片执行一个操作,多个操作快速切换执行)。

      区别三:

      当有多个线程在操作时,如果系统只有一个CPU,则它根本不可能真正同时进行一个以上的线程,它只能把CPU运行时间划分成若干个时间段,再将时间段分配给各个线程执行,在一个时间段的线程代码运行时,其它线程处于挂起状态。这种方式我们称之为并发(Concurrent)。

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

      并行和并发哪个好?并行和并发的概念和区别

      总结

      总得来说并行与并发各有其特点,要说它们两者哪个更好,则因情况而定。

    展开全文
  • 并行和并发的区别

    万次阅读 多人点赞 2019-05-13 09:40:22
    并行和并发有什么区别? 并行(parallelism),是同一时刻,两个线程都在执行。 并发(concurrency),是同一时刻,只有一个执行,但是一个时间段内,两个线程都执行了。 并行 并发 【Java面试题与答案...

    并行和并发有什么区别?

    • 并行(parallelism),是同一时刻,两个线程都在执行。
    • 并发(concurrency),是同一时刻,只有一个执行,但是一个时间段内,两个线程都执行了。

     

    并行

    并发

     


    【Java面试题与答案】整理推荐

     

    展开全文
  • JVM的并行和并发

    2020-08-22 15:07:05
    程序的并行和并发 程序的并发(Concurrent) 在操作系统中,是指一个时间段上有几个程序都处于已经启动运行到运行已经完毕之间,且这几个程序都是在同一个处理器_上运行。 并发不是真正意义上的”同时进行“,知识CPU...

    程序的并行和并发

    程序的并发(Concurrent)

    • 在操作系统中,是指一个时间段上有几个程序都处于已经启动运行到运行已经完毕之间,且这几个程序都是在同一个处理器_上运行。
    • 并发不是真正意义上的”同时进行“,知识CPU把一个时间段划分成几个时间片段(时间区间),然后在这几个时间区间之间来回切换,由于CPU处理的速度非常快,只要时间间隔处理的的当,就可以让用户感觉是多个应用程序同时在进行
      在这里插入图片描述

    程序的并行(Parallel)

    • 当系统有一个以上的CPU时,当一个CPU执行一个进程时,另一个CPU可以执行另一个进程,两个进程互不抢占CPU资源,可以同时进行,我们称之为并行(parallel)
    • 其实决定并行的因素不是CPU的数量,而是CPU的核心数量,比如一个CPU多个核也可以并行
    • 适合科学计算,后台处理等弱交互的场景
      在这里插入图片描述

    二者对比

    • 并发,指的是多个事情,在同一时间段内同时发生了
    • 并行,指的是多个事情,在同一时间点上同时发生了
    • 并发的多个任务之间是互相抢占资源的,
    • 并行的多个任务之间是互不抢占资源的
    • 只有在多CPU或一个CPU多核的情况中,才会发生并行,否则,看似同时发生的事情没事都是并发执行的

    垃圾回收的并发与并行

    并发和并行,在谈论垃圾收集器的上下文语境中,他们可以解释如下:

    • 并行:指多条垃圾收集线程并行工作,但是此时用户线程仍处于等待状态、
      • 如ParNew、 Parallel Scavenge、 Parallel 0ld;
    • 串行(Serial):
      • 相较于并行的概念,单线程执行
      • 如果内存不够,则程序暂停,启动JVM垃圾回收,回收完,再启动程序线程
        在这里插入图片描述
    • 并发(Concurrent):指用户线程与垃圾收集县城同时执行(但不一定是并行的,可能会交替执行),垃圾回收线程在执行时不会停顿用户程序的运行
      • ➢用户程序在继续运行,而垃圾收集程序线程运行于另一个CPU上;
      • ➢如: CMS、G1
        在这里插入图片描述
    展开全文
  • 1.并行和并发有什么区别 并行针对于不同事物对象,并发针对于同一对象。 并行并发: 关注公众号免费领取100G大数据教学视频,内部有完整的java面试题合集对标阿里p6+,目前有jvm,java基础,java多线程...

    1.并行和并发有什么区别

    并行针对于不同事物对象,并发针对于同一对象。

    并行:

    并发:

     

    关注公众号免费领取100G大数据教学视频,内部有完整的java面试题合集对标阿里p6+,目前有jvm,java基础,java多线程,java集合框架,redis高级面试,mysql高级面试题,dubbo高级面试题,spring高级面试题等等

     

    展开全文
  • 串行、并行和并发

    2020-01-18 14:28:27
    串行、并行和并发 并行和并发 并发:1.一个处理器。2.逻辑上的同时运行 并行:2.多个处理器。2.物理上的同时运行 并发:一个咖啡机,交替 并行:多个咖啡机 并行:真正的“同时”运行,在同一时刻,有...
  • Java面试题之并行和并发有什么区别?

    万次阅读 多人点赞 2019-05-23 18:22:11
    在我们应聘的过程中,会有人问你,并行和并发他们之间是怎样的区别呢?虽然学过这些知识,但是没有进行整理,猛地一问也许你会回答不上来,所以在学习过程中我们要不断去整理所学的知识,进行系统化,才会有更加清晰...
  • C ++并行和并发标准库文档:最新,开发(主)HPX HPX是C ++并行和并发标准库。 它实现了C ++标准定义的所有相应功能。 此外,在HPX中,我们实现了建议的功能,这些功能是正在进行的C ++标准化过程的一部分。 我们还...
  • 并行和并发有什么区别?

    千次阅读 2020-03-13 17:05:05
    并发:是指多个线程任务在同一个CPU上快速地轮换执行,由于切换的速度非常快,给人的感觉就是这些线程任务是在同时进行的,但其实并发只是一种逻辑上的同时进行; 并行:是指多个线程任务在不同CPU上同时进行,是...
  • 多线程并行和并发的区别 并行:就是两个任务同时运行,就是甲任务进行的同时,乙任务也在进行。(需要多核CPU) 并发:是指两个任务都请求运行,而处理器只能按受一个任务,就把这两个任务安排轮流进行,由于时间...
  • 并行和并发、同步异步的区别 戎·码一生 2013-08-06 20:49:32 3498 收藏 5 分类专栏: 操作系统 版权 1、并行 对多处理器而言--多个程序在同一时刻发生,具有并发的含义,但并发不一定并行,也亦是说并发事件之间...
  • 串行、并行和并发的区别

    千次阅读 2020-06-15 13:32:43
    3、并发是指在某一个时间段里面可以多个小任务一起执行,而不是非要在同一时间一起做,也可以是在这个时间段里面我做会a任务(由于a任务需要等待别的任务完成)然后这个间隔我可以操作b任务。 ...
  • iOS 并行和并发

    千次阅读 2017-02-21 10:01:01
    一、概念1.并发 当有多个线程在操作时,如果系统只有一个CPU,则它根本不可能真正同时进行一个以上...2.并行 当系统有一个以上CPU时,则线程的操作有可能非并发。当一个CPU执行一个线程时,另一个CPU可以执行另一个线程,
  • java多线程之并行和并发

    千次阅读 2018-05-18 13:54:48
    1.并发和并行是即相似又有区别(微观概念)并行:指两个或多个事件在同一时刻点发生;并发:指两个或多个事件在同一时间段内发生。--------------------------------------------------------------------------------...
  • 并行和并发的区别与联系

    千次阅读 2018-08-13 18:59:45
    你吃饭吃到一半,电话来了,你一直到吃完了以后才去接,这就说明你不支持并发也不支持并行。 你吃饭吃到一半,电话来了,你停了下来接了电话,接完后继续吃饭,这说明你支持并发。 你吃饭吃到一半,电话来了,你一边...
  • 一、前言     ...我们的操作系统,在一个时间中,只能处理一个线程。...(1)在传统的操作系统中,程序并不能独立运行,作为资源分配独立运行的基本单位都是进程。 ...
  • 操作系统中并行和并发的概念

    千次阅读 2017-08-13 22:30:45
    在单处理机系统中,下述并行和并发现象哪些可能发生,哪些不会发生? (1) 进程与进程之间的并行; (2) 进程与进程之间的并发; (3) 处理机与设备之间的并行; (4) 处理机与通道之间的并行; (5) 通道与通道之间...
  • 1,并行和并发有什么区别 并行:多个处理器或多核处理器同时处理多个任务。 并发:多个任务在同一个CPU核上,按细分的时间片轮流(交替)执行,从逻辑上来看并发的任务是同时执行; 简而言之: 并发=两个队列一台...
  • hpx:并行和并发的C ++标准库
  • 进程线程之间的关系? 并行和并发区别? 为什么使用并发
  • 这是与《 Haskell中的并行和并发编程》一书(Simon Marlow,O'Reilly 2013)一起提供的示例代码。 要在您的系统上构建代码,您需要: 用堆栈构建 stack build 将生成所有可执行文件并将其安装在.stack-work/install...
  • 线程进程、并行和并发的概念

    千次阅读 2018-05-09 00:20:53
    1.并发并行 总体概念 并发:在单核 CPU 系统中,系统调度在某一时刻只能让一个进程运行,虽然这种调度机制有多种形式(大多数是时间片轮巡为主),但无论如何,要通过不断切换需要运行的进程让其运行的方式...
  • 并行和并发,同步异步的区别

    千次阅读 2018-12-08 01:17:17
    老是忘记并发和并行,同步和异步之间的区别,今天写篇博客,加深印象。 并发 & 并行  并发:当有多个线程在操作时,如果系统只有一个CPU,则它根本不可能真正同时进行一个以上的线程,它只能把CPU运行时间...
  • 进程线程的区别 进程是资源的分配调度的一个独立单元,而线程是CPU调度的基本单元 同一个进程中可以包括多个线程,并且线程共享整个进程的资源(寄存器、堆栈、上下文),一个进行至少包括一个线程。 进程的...
  • 进程的并行和并发

    2019-10-06 14:22:18
    一、进程的并发和并行 并行: 并行是指两者同时执行,比如赛跑,两个人都在不停的往前跑;(资源够用,比如三个线程,四核的CPU ) 并发: 并发是指资源有限的情况下,两者交替轮流使用资源,比如一段路(单核CPU资源)...
  • 在了解垃圾收集器之前,本篇文章先来简单的说一下新生代老年代、并行和并发的概念。 新生代老年代 从内存回收的角度来看,一般我们可以将Java堆分为:新生代老年代。 新生代再细分可以分为 Eden空间、...
  • 并行:同一时刻,有多条指令在多个处理器上同时执行。 并发:同一时刻,只能有一条指令执行,但多个进程指令被快速轮换执行,使得在宏观上具有多个进程同时执行的效果。 进程一般具有以下4大要素: 1、有一段程序...
  • 并行是指两个或者多个事件在同一时刻发生;...倘若在计算机系统中有多个处理机,则这些可以并发执行的程序便可被分配到多个处理机上,实现并行执行,即利用每个处理机来处理一个可并发执行的程序,这样,多个程序便可
  • [并发概念] 串行、并行并发

    千次阅读 2019-12-31 07:29:43
    并发和并行 概念非常相似,难以区分。分别体现在两个方面。 并发(Concurrency),体现在(1)单个处理器;(2)逻辑上同步运行。 并行(Parallelism),体现在(1)多处理器,多核心;(2)物理上同步运行。 并行的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 244,329
精华内容 97,731
关键字:

并行和并发