java-JUC并发编程学习笔记03(尚硅谷)

线程间通信

例子:

对一个值+1 -1交替完成,a的值就是1 b的值就是0 这个过程就是线程间通信

Synchronized实现:

虚假唤醒问题:

我们再添加两个线程。

我们发现我们的结果就不对了。

我们只需要使用while即可。

我们线程通信的最后一步就是防止虚假通信的出现。

Lock实现:

运行结果:

这就是我们使用lock和synchronized两种方式进行线程的通信的基础学习。

相关推荐
M78佐菲7 小时前
51单片机学习笔记:ds18b20要点整理
linux·笔记·嵌入式硬件·学习·51单片机
高亦真7 小时前
今天是学习嵌入式的第37天
linux·学习·算法
蒸蒸yyyyzwd8 小时前
从面经中学到的三件事
c++·笔记
泡泡鱼(敲代码中)10 小时前
Python 字符串 str 完整学习笔记
python·学习
IT小白杨11 小时前
社媒多账号运营的环境隔离:一张图谱模型,解释清“为什么换IP还是被连坐“
经验分享·笔记·矩阵·指纹浏览器
kyrie_sakura11 小时前
python学习笔记15 -- Anaconda,Jupyter,numpy
python·学习·jupyter·numpy
PC2005-cloud13 小时前
Rust学习笔记:控制流——if、loop、while、for与match
笔记·学习·rust
彧azz14 小时前
DFS与BFS:图遍历的两大核心算法
数据结构·学习·算法·深度优先·广度优先
IT笔记14 小时前
Rust 迭代器多级链式调用执行顺序笔记
开发语言·笔记·rust
kyrie_sakura14 小时前
python学习笔记14 -- FastAPI
笔记·python·学习·fastapi