美文网首页
2021-01-18 并行与并发

2021-01-18 并行与并发

作者: Denholm | 来源:发表于2021-01-18 17:51 被阅读0次

单核 cpu 下,线程实际还是串行执行 的。操作系统中有一个组件叫做任务调度器,将 cpu 的时间片(windows下时间片最小约为 15 毫秒)分给不同的程序使用,只是由于 cpu 在线程间(时间片很短)的切换非常快,人类感觉是同时运行的 。总结为一句话就是: 微观串行,宏观并行
一般会将这种 线程轮流使用 CPU 的做法称为并发, concurrent


image.png
image.png

多核 cpu下,每个 核(core) 都可以调度运行线程,这时候线程可以是并行的。


image.png
image.png
引用 Rob Pike 的一段描述:
并发(concurrent)是同一时间应对(dealing with)多件事情的能力
并行(parallel)是同一时间动手做(doing)多件事情的能力

例子
家庭主妇做饭、打扫卫生、给孩子喂奶,她一个人轮流交替做这多件事,这时就是并发
家庭主妇雇了个保姆,她们一起这些事,这时既有并发,也有并行(这时会产生竞争,例如锅只有一口,一个人用锅时,另一个人就得等待)
雇了3个保姆,一个专做饭、一个专打扫卫生、一个专喂奶,互不干扰,这时是并行

相关文章

  • 2021-01-18 并行与并发

    单核 cpu 下,线程实际还是串行执行 的。操作系统中有一个组件叫做任务调度器,将 cpu 的时间片(window...

  • 服务器并发设计

    并发与并行 并发技术选型 结构并发 状态并发 集群和负载均衡 并发(Coccurrency)和并行(Paralle...

  • JS异步编程相关知识点

    并发(concurrency)和并行(parallelism)区别 涉及面试题:并发与并行的区别? 并发是宏观概念...

  • Java并发编程整理之并发与并行概念讲解(1)

    Java并发编程整理之并发与并行概念讲解(1) 并发和并行区别 --[百度]:并发(Concurrent)当有多个...

  • 2019-08-01

    并行与并发的区别

  • 并发简介

    并发基本概念 并发与并行 并发指的是程序的结构,而并行指的是程序运行时的状态。 何谓并发(concurrency)...

  • JVM垃圾回收算法与收集器

    相关概念 并行与并发 并行(Parallel):指多条垃圾收集线程并行工作,但此时用户线程仍然处于等待状态。 并发...

  • Go 并发编程

    1 并发与并行 Erlang之父Joe Armstrong曾经以下图解释并发与并行。 并发在图中的解释是两队人排队...

  • 01-并发概述

    并发编程由来: 串行与并行 并发编程目的 并发编程的场景

  • Java Stream的并行实现

    作者: 一字马胡 转载标志 【2017-11-03】 更新日志 并行与并发 关于并发与并行,需要弄清楚的是,并行...

网友评论

      本文标题:2021-01-18 并行与并发

      本文链接:https://www.haomeiwen.com/subject/kfvxzktx.html