系列一、JUC概述

news/2024/5/20 7:19:01 标签: JUC

一、概述

juc是java.util.concurrent在并发编程中使用的工具类。

二、进程 & 线程

2.1、进程概述

进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。

2.2、线程概述

        通常在一个进程中可以包含若干个线程,一个进程中至少有一个线程,不然没有存在的意义。线程可以利用进程所拥有的资源,在引入线程的操作系统中,通常都是把进程作为分配资源的基本单位,而把线程作为独立运行和独立调度的基本单位,由于线程比进程更小,基本上不拥有系统资源,故对它的调度所付出的开销就会小得多,能更高效的提高系统多个程序间并发执行的程度。

2.3、举例

(1)使用QQ,查看进程一定有一个QQ.exe的进程,我可以用qq和A文字聊天,和B视频聊天,给C传文件,给D发一段语言,QQ支持录入信息的搜索。
(2)大四的时候写论文,用word写论文,同时用QQ音乐放音乐,同时用QQ聊天,多个进程。
(3)word如没有保存,停电关机,再通电后打开word可以恢复之前未保存的文档,word也会检查你的拼写,两个线程:容灾备份,语法检查

2.4、线程的状态(Thread.State)

public enum State {
        NEW,			// 新建
        RUNNABLE,		// 准备就绪
        BLOCKED,		// 阻塞
        WAITING,		// 不见不散
        TIMED_WAITING,	// 过时不候
        TERMINATED;		// 终结
}

2.5、wait vs sleep

功能都是使当前线程暂停,有什么区别?
wait:放开手去睡,放开手里的锁
sleep:抱着锁去睡,醒了手里还有锁

2.6、并发 vs 并行

并发:同一时刻多个线程在访问同一个资源,多个线程对一个点
例子:小米9今天上午10点,限量抢购、春运抢票、电商秒杀…

并行:多项工作一起执行,之后再汇总
例子:泡方便面,电水壶烧水,一边撕调料倒入桶中

 


http://www.niftyadmin.cn/n/5196283.html

相关文章

队列和微服务的异步通信

什么是同步通信? 考虑以下微服务架构示例: 微服务架构 您让 Microservice1 调用 Microservice2,而 Microservice2 又调用 Microservice3。假设 Microservice3 提供简单的 Web 服务功能。因此,Microservice1 可以通过 HTTP 向其发…

springcloud医院挂号预约系统源码

开发技术: jdk1.8,mysql5.7,nodejs,idea,vscode springcloud springboot mybatis vue elementui 功能介绍: 用户端: 登录注册 首页显示医生列表,医院简介,点击医生…

代码随想录-刷题第二天

977. 有序数组的平方 题目链接:977. 有序数组的平方 思路:双指针思想,数组是有序的且含有负数,其中元素的平方一定是两边最大。定义两个指针,从两端开始向中间靠近,每次比较两个指针的元素平方大小&#…

基于springboot实现大学生就业服务平台系统项目【项目源码】

基于springboot实现大学生就业服务平台系统演示 Java技术 Java是由SUN公司推出,该公司于2010年被oracle公司收购。Java本是印度尼西亚的一个叫做爪洼岛的英文名称,也因此得来java是一杯正冒着热气咖啡的标识。Java语言在移动互联网的大背景下具备了显著…

Spring Cloud Ribbon:负载均衡的服务调用

💗wei_shuo的个人主页 💫wei_shuo的学习社区 🌐Hello World ! Spring Cloud Ribbon:负载均衡的服务调用 Spring Cloud Ribbon 是Spring Cloud Netflix 子项目的核心组件之一,主要给服务间调用及API网关转发…

数据结构之链表练习与习题详细解析

个人主页:点我进入主页 专栏分类:C语言初阶 C语言程序设计————KTV C语言小游戏 C语言进阶 C语言刷题 数据结构初阶 欢迎大家点赞,评论,收藏。 一起努力,一起奔赴大厂。 目录 1.前言 2.习题解…

IDEA自动注解设置(中文版)

IDEA自动注解设置 1、添加类自动注释 文件 - 设置 - 编辑器 - 文件和代码模板 - Include - File Header /** *description:TODO *author: ${USER} *create: ${DATE} ${TIME} */2、添加类方法自动注释 文件 - 设置 - 编辑器 - 实时模版 - …

Pandas透视表与交叉表_Python数据分析与可视化

这里写目录标题 透视表交叉表 透视表 透视表是各种电子表格程序和其他数据分析软件中一种常见的数据汇总工具。它根据一个或多个键对数据进行聚合,并根据行和列上得分组建将数据分配到各个矩形区域中。在 pandas 中,可以通过 pivot_table 函数创建透视表…