当前位置:网站首页>JUC并发知识点
JUC并发知识点
2022-07-29 05:23:00 【李汁汁】
目录
什么是JUC:
JUC是java.util.concurrent包的缩写 JUC指的是Java的并发工具包
就是java.util工具包、包、分类
业务:普通的线程代码 Thread
Runnable 没有返回值 效率相比于 callable 相对较低
Lock锁
什么叫进程?
:一个程序的集合 执行起来就是一个个进程
什么是线程
一个进程包含多个线程 一个进程至少包含一个线程
java默认有几个线程 ? 2个 一个是main线程 一个是 GC线程
java真的能开启线程吗? 无法开启 调用的是本地的方法 底层的C++ Java无法直接操作硬件
理解并发和并行
并发编程的本质:充分利用cpu资源
线程 几种状态
(new )新生 (runnable)运行 ( bocked) 阻塞 (waiting) 等待 (timed_waiting) 超时等待 (terminated) 终止
wait 和sleep的区别


Lock锁
公平锁 可以先来后到
非公平锁 可以插队
Lock 和Synchronized 区别
1.Synchronized 是java的关键字 Lock是Java类
2. S无法判断锁的状态 L可以判断是否获取到锁
3 S会自动释放锁 L需要手动释放锁 不释放会造成死锁
4 S 线程1 阻塞 2就会一直等待 L不一定会等待下去
5 S 可重入锁 不可以中断 是非公平锁 L是 可重入锁 非公平(可以设置)
6 S是少量代码 L适用于大量代码
锁是什么 如何判断锁的是谁 ?
生产者消费者 两个线程不会 四个、多个线程 会造成虚假唤醒
线程可以唤醒 而不会被通知 即虚假唤醒 等待应该出现在循环中
if判断只会判断一次 唤醒时会造成虚假唤醒
if 改为 while判断
![]()

Condition 实现精准唤醒
为什么要精准唤醒 lockA线程处理完 无法确保是B线程 需要Condition 去实现精准唤醒



边栏推荐
- 2022春招——芯动科技FPGA开发岗笔试题(原题以及心得)
- 华为云14天鸿蒙设备开发-Day2编译框架
- 噪音监测传感系统
- Huawei cloud 14 day Hongmeng device development -day5 drive subsystem development
- 抽象类以及接口
- Based on STM32: couple interactive doll (design scheme + source code +3d drawing +ad circuit)
- ArduinoIDE + STM32Link烧录调试
- QT learning notes QT model/view
- 倾角传感器精度校准检测
- STM32 检测信号频率
猜你喜欢

华为云14天鸿蒙设备开发-Day1环境搭建

Migration learning - geodesic flow kernel for unsupervised domain adaptation

2022春招——芯动科技FPGA岗技术面(一面心得)

【软件工程之美 - 专栏笔记】24 | 技术债务:是继续修修补补凑合着用,还是推翻重来?

Power electronics: single inverter design (matlab program +ad schematic diagram)

Hal library learning notes-10 overview of Hal library peripheral driver framework

Based on STM32: couple interactive doll (design scheme + source code +3d drawing +ad circuit)

传统模型预测控制轨迹跟踪——圆形轨迹(功能包已经更新)

CV520国产替代Ci521 13.56MHz 非接触式读写器芯片

CS5340国产替代DP5340多比特音频 A/D 转换器
随机推荐
Hal library learning notes - 9 DMA
华为云14天鸿蒙设备开发-Day5驱动子系统开发
QT学习笔记-Excel的导入导出
Design and implementation of QT learning notes data management system
新能源充电桩后台管理系统平台
Jingwei Qili: OLED character display based on hmep060 (and Fuxi project establishment demonstration)
基于wifi的温度采集与控制系统
NRF52832-QFAA 蓝牙无线芯片
2022 spring recruit - Hesai technology FPGA technology post (one or two sides, collected from: Digital IC workers and FPGA Explorers)
兼容cc1101/cmt2300-DP4301 SUB-1G 无线收发芯片
数论:px+py 不能表示的最大数为pq-p-q的证明
【软件工程之美 - 专栏笔记】28 | 软件工程师的核心竞争力是什么?(下)
【软件工程之美 - 专栏笔记】“一问一答”第3期 | 18个软件开发常见问题解决策略
基于STC51:四轴飞控开源项目原理图与源码(入门级DIY)
HAL库学习笔记-10 HAL库外设驱动框架概述
HAL库学习笔记-14 ADC和DAC
给二维表添加时间序列索引
Huawei cloud 14 day Hongmeng device development -day5 drive subsystem development
Migration learning - geodesic flow kernel for unsupervised domain adaptation
Transfer learning