zoukankan      html  css  js  c++  java
  • 并发、并行、同步、异步、阻塞、非阻塞概念整理

    1. 并发与并行

    并发是指在一个时间段内, 有多个程序同时在CPU上运行,但是任意时刻只有一个程序在CPU上运行

        一个时间段内能够完成多个程序的切换,所以例如在1s之内, 执行了100个程序,

    并行是指在任意时刻点上,有多个程序同时运行在CPU上;

        例如我们的CPU有四个核心, 那么在一个时刻点上最大程序运载量为4

    所以我们平时所说的高并发,但少有听说过高并行,正是因为我们CPU的核心数有限,下面举一个例子来说明这两者的区别:情况是开水没有,水壶要洗,茶壶茶杯要洗;火生了,茶叶也有了该怎么办?

      并发版:洗好水壶,灌满凉水,并烧水,然后利用烧水的时间完成洗茶壶、洗茶杯、放茶叶等工作,最后泡茶喝;

      并行版: A洗好水壶、灌满凉水,并烧水; B洗茶壶; C洗茶杯,放茶叶;(A、B、C、D均代表某个人)

    2.同步与异步

    同步是指程序代码调用IO操作的时候, 需要等到IO操作完成之后才返回的运行方式;

    异步:是指程序代码调用IO操作的时候,不需要等到IO操作完成之后才返回的运行方式

    3.阻塞与非阻塞

    阻塞:是指调用函数时候当前线程/进程挂起

    非阻塞: 是指调用函数时候当前线程/进程不会被挂起,而是立即返回

  • 相关阅读:
    神经网络 初步
    SVM整理
    碎碎念
    random note
    2015阿里实习内推一轮被拒
    django开发框架-view & template
    一点思考
    dive into python 读笔(3)
    dive into python 读笔(2)
    dive into python 读笔(1)
  • 原文地址:https://www.cnblogs.com/kisun168/p/11210455.html
Copyright © 2011-2022 走看看