【JUC】并发与并行

单核cpu下,线程实际还是串行执行的,操作系统中有一个组件叫任务调度器,将cpu的时间片(windows下时间片最小约15毫秒)分给不同的线程使用,只是由于cpu在线程间(时间片很短)的切换非常快,人类感觉是同时运行的

总结为一句话:微观串行,宏观并行

一般会将这种线程轮流使用CPU的做法称为并发,concurrent

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

更多的时候既有并行也有并发

线程数比核心数多的时候

引用golang语言的创造者Rob Pike的一段描述:

并发是同一时间应对多件事情的能力

并行是同一时间动手做多件事情的能力

相关推荐
cyforkk1 天前
IntelliJ IDEA 配置 Java 类全局注释模板操作指南
java·ide·intellij-idea
代码探秘者1 天前
【大模型应用】6.RAG 场景下的向量+关键词混合检索
java·开发语言·人工智能·python·spring
猿小路1 天前
SVN安装及IDEA集成详细使用教程
java·svn·intellij-idea
spencer_tseng1 天前
ojdbc6-1.0.0.jar xmlworker-1.0.0.jar
java·maven·jar
Amour恋空1 天前
Nacos服务发现与配置
java·后端·服务发现
chikaaa1 天前
RabbitMQ 核心机制总结笔记
java·笔记·rabbitmq·java-rabbitmq
咕叽吧咔1 天前
LeetBook乐扣题库 142. 环形链表 II
java·数据结构·leetcode·链表
Sylvia33.1 天前
体育数据API实战:用火星数据实现NBA赛事实时比分与状态同步
java·linux·开发语言·前端·python
Coder-coco1 天前
家政服务管理系统|基于springboot + vue家政服务管理系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·论文·毕设·家政服务管理系统
人道领域1 天前
Day | 07 【苍穹外卖 :用户端添加购物车】
java·开发语言·数据库·后端·苍穹外卖