zoukankan      html  css  js  c++  java
  • 并发和并行有什么区别?

    做并发编程之前,必须首先理解什么是并发,什么是并行,什么是并发编程,什么是并行编程。

    并发(concurrency)和并行(parallellism)是:

    1. 解释一:并行是指两个或者多个事件在同一时刻发生;而并发是指两个或多个事件在同一时间间隔发生。
    2. 解释二:并行是在不同实体上的多个事件,并发是在同一实体上的多个事件
    3. 解释三:在一台处理器上“同时”处理多个任务,在多台处理器上同时处理多个任务。如hadoop分布式集群

    所以并发编程的目标是充分的利用处理器的每一个核,以达到最高的处理性能。

    通俗点说 并发就是不同线程同时干一件事情 并行就是不同线程同时干不同的事情       

    • 也就是说并发必然牵扯到应用系统中资源的竞争

      《并发的艺术》中大概是这样写的,系统中有多个任务同时存在可称之为“并发”,系统内有多个任务同时执行可称之为“并行”;并发是并行的子集。比如在单核CPU系统上,只可能存在并发而不可能存在并行。

      并发是逻辑上的同时发生,并行更多是侧重于物理上的同时发生。并发往往是指程序代码的结构支持并发,并发的程序在多cpu上运行起来才有可能达到并行,并行往往是描述运行时的状态。

      3.解释三:在一台处理器上“同时”处理多个任务,在多台处理器上同时处理多个任务。如hadoop分布式集群
      并发:在一台处理器上”同时”处理多个任务
      并行:在多台处理器上同时处理多个任务,比如说hadoop分布式集群

      并行 : 双十一 , 零时零分零秒,三十万用户同时登录淘宝网

      并发 : 双十一 , 零时零分零秒 至 两点零分零秒 共有一百万用户登录淘宝网.

  • 相关阅读:
    Git中使用.gitignore忽略文件的推送
    git stash详解
    Git撤销&回滚操作(git reset 和 get revert)
    git rebase和git merge的区别
    git撤销已经push到远程仓库上的代码
    Git Merge
    git cherry-pick 教程
    Failed to start LSB: Bring up/down错误解决方法
    linux centos7安装部署gitlab服务器
    CentOs7 HP找回root密码
  • 原文地址:https://www.cnblogs.com/dongguolei/p/8039889.html
Copyright © 2011-2022 走看看