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

线程间通信

例子:

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

Synchronized实现:

虚假唤醒问题:

我们再添加两个线程。

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

我们只需要使用while即可。

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

Lock实现:

运行结果:

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

相关推荐
H__Rick39 分钟前
C51单片机学习-DAY3
单片机·学习·mongodb
yoothey2 小时前
异常学习笔记:为什么自定义异常后还要 throw?
笔记·学习
sulikey2 小时前
数据库系统概论4 - 更新与视图 期末速成课笔记
数据库·笔记·考试·期末速成·数据库系统概论
WangN22 小时前
【通识】宇树G1_29DOF速度跟踪训练—逐章学习手册
人工智能·python·学习·机器人·具身智能
لا معنى له3 小时前
NeoVerse: Enhancing 4D World Model with in-the-wild Monocular Videos
人工智能·笔记·机器学习·语言模型
黄毛火烧雪下3 小时前
Java 基础笔记:文件、递归与字符编码
java·开发语言·笔记
学计算机的计算基3 小时前
链表算法上篇:LeetCode 206/234/141/142/160/21 题解与易错点
java·笔记·算法·链表
lazy H4 小时前
Spring Boot 项目如何连接 Redis?新手入门配置和常见错误总结
ide·spring boot·redis·后端·学习·intellij-idea
雾沉川4 小时前
Flutter 入门开发环境完整搭建教程
学习·flutter
二哈赛车手4 小时前
新人笔记---idea索引失效问题解决方案
java·笔记·spring·elasticsearch·intellij-idea