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

线程间通信

例子:

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

Synchronized实现:

虚假唤醒问题:

我们再添加两个线程。

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

我们只需要使用while即可。

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

Lock实现:

运行结果:

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

相关推荐
疯狂打码的少年1 分钟前
【数据库技术】两级映像与数据独立性(逻辑/物理独立性)
数据库·笔记
web行路人11 分钟前
AI 全栈学习之旅 - Week4:容器化部署与生产环境实战
python·学习
翻身的咸鱼ing15 分钟前
ArkTS 学习笔记
笔记·学习
程序猿炎义18 分钟前
【llm-algo-leetcode学习笔记】训练侧显存优化
人工智能·笔记·学习
动词ing20 分钟前
【学习笔记】数据结构(数组滑动窗口+无重复字符的最长字串题目)
数据结构·笔记·学习
田径他爸来了1 小时前
嵌入式学习第32天(同时多个用户访问的服务器)
运维·服务器·学习
骐骥11 小时前
学习:Webview的runJavaScript和runJavaScriptExt有什么区别
学习·鸿蒙
存在morning1 小时前
【Flink SQL 学习笔记 二】实时聚合:用窗口和 Watermark 把订单按时段统计
sql·学习·flink
高亦真1 小时前
今天是学习嵌入式的第31天
linux·学习·算法
CarIise1 小时前
JavaScript进阶与轮播图实现 课堂笔记
开发语言·javascript·笔记