• Java基础知识强化之多线程笔记04:并行和并发 区别


    1. 并发 和 并行区别

    (1)并发:(单核

    并发,是在同一个cpu上同时(不是真正的同时,而是看来是同时,因为cpu要在多个程序间切换)运行多个程序。

    并发是指两个任务都请求运行,而处理器只能按受一个任务,就把这两个任务安排轮流进行,由于时间间隔较短,使人感觉两个任务都在运行。

    并发性是对有限物理资源强制行使多用户共享以提高效率。

     

    (2)并行(多核

    现在cpu到了多核的时代,那么就出现了新的概念:并行

     

    并行,是每个cpu运行一个程序。

    并行是真正的细粒度上的同时进行;既同一时间点上同时发生着多个并发;更加确切并且简单的来讲:就是每个cpu上运行一个程序,以达到同一时间点上每个cpu上运行一个程序。

     

    2. 打个比方:

    并发,就像一个人(cpu)喂2个孩子(程序),轮换着每人喂一口,表面上两个孩子都在吃饭。

    并行,就是2个人喂2个孩子,两个孩子也同时在吃饭。

     

    并发与并行的本质 ?

    • 并发:是一个物理CPU(也可以多个物理CPU) 在若干道程序之间多路复用,并发性是对有限物理资源强制行使多用户共享以提高效率。
    • 并行:指两个或两个以上事件或活动在同一时刻发生。在多道程序环境下,并行性使多个程序同一时刻可在不同CPU上同时执行。
  • 相关阅读:
    WPF之元素绑定
    BC9050的IP地址设置
    C#之进程、线程
    EPLAN学习笔记01
    Beckhoff模拟量模块的使用
    倍福-基于EL2521的NC轴控制
    kali之ARP欺骗获取图片流
    PHP脚本实现凯撒加(解)密
    SQL注入(一)普通型注入
    linux卸载不完全
  • 原文地址:https://www.cnblogs.com/hebao0514/p/4874778.html
Copyright © 2020-2023  润新知