并行与并发区别

简介: 并行与并发区别

备战2022春招或暑期实习,祝大家每天进步亿点点!Java并发编程Day2

本篇总结的是 如何在Java中避免创建不必要的对象,后续会每日更新~

关于《我们一起学Redis》、《我们一起学HarmonyOS》等知识点可以查看我的往期博客

相信自己,越活越坚强,活着就该逢山开路,遇水架桥!生活,你给我压力,我还你奇迹!image.png目录


1、并发


2、并行


1、并发

百度百科解释


并发,在操作系统中,是指一个时间段中有几个程序都处于已启动运行到运行完毕之间,且这几个程序都是在同一个处理机上运行,但任一个时刻点上只有一个程序在处理机上运行。


总结上面的话就是,线程轮流使用CPU的情况就称为并发(concurrent)。


总结:微观串行,宏观并行。

操作系统通过任务调度器来将CPU的时间片分给不同的线程使用,在切换线程的时候就会发生上下文切换,这个切换时间非常的短,人基本上无法感知,因此我们在单核CPU电脑中启动多个应用也会感觉是在同时运行;实际上,这些进程内的线程是串行执行的。


如下图:多个线程在单核CPU中运行,微观上是串行的,需要等待获取CPU的执行权(分配到时间片)

image.png

2、并行

在多核CPU中,每个核都可以调度线程,这时线程是可以并行的。

如下图:多个线程在多核CPU中运行,每个核都可以调度线程,这样在微观上就是并行了image.png

目录
相关文章
基础练习-5
基础练习-5
224 0
|
资源调度
通过yarn快速安装 electron
通过yarn快速安装 electron
1055 0
|
机器学习/深度学习 人工智能 搜索推荐
探索人工智能在医疗诊断中的应用
【5月更文挑战第11天】 随着人工智能(AI)技术的快速发展,其在医疗领域的应用已经成为改善患者护理和提高诊断效率的重要工具。本文将深入探讨AI在医疗诊断中的具体应用,包括图像识别、疾病预测、个性化治疗建议等方面。通过实例分析,我们将展示AI如何辅助医生进行更准确的诊断,并讨论AI在医疗行业中实施的挑战与机遇。
|
机器学习/深度学习 算法 Java
从斐波那契数列到递归
大家好,我是王有志。今天我们要通过经典数学问【题斐波那契数列】来学习非常重要的编程技巧:递归。
471 1
从斐波那契数列到递归
|
算法 Unix Linux
【操作系统】操作系统的进程调度算法
【操作系统】操作系统的进程调度算法
【操作系统】操作系统的进程调度算法
|
JavaScript 索引
Vue $set 源码解析(保证你也能看懂)
说明这个key本来就在对象上面已经定义过了的,直接修改值就可以了,可以自动触发响应
293 0
Vue $set 源码解析(保证你也能看懂)
|
NoSQL 算法 定位技术
Geospatial
Geospatial是Redis在3.2版本以后增加的地理位置GEO模块,这个模块可以用来实现微信附近的人,在线点餐“附近的餐馆”等位置功能。
683 1
Geospatial
|
消息中间件 NoSQL Kafka
Pub/Sub
Redis的Pub/Sub发布订阅,是Redis一步步完善消息队列功能的一个进步点,虽然现在没人用Pub/Sub做消息队列,但是它的思想和功能也是值得玩一下的,这个就是我写这篇文章的主要原因。
408 0
Pub/Sub
|
消息中间件 NoSQL Java
企业级 SpringBoot 教程-在springboot中用redis实现消息队列
准备阶段 java 1.8 maven 3.0 idea 环境依赖 创建一个新的springboot工程,在其pom文件,加入spring-boot-starter-data-redis依赖: <dependency> <groupId>org.
4233 0
|
存储 关系型数据库 数据库