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

线程间通信

例子:

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

Synchronized实现:

虚假唤醒问题:

我们再添加两个线程。

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

我们只需要使用while即可。

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

Lock实现:

运行结果:

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

相关推荐
~kiss~5 分钟前
Agent Memory System 之 Recent Advance
学习
苏子寒29 分钟前
Nano-VLLM全代码解析笔记(2)-block_manager
人工智能·笔记·python·机器学习·nlp·vllm
心仪久了会沦陷34 分钟前
数据结构入门系列——顺序表详解:概念、分类与动态实现
c语言·数据结构·经验分享·笔记·开源
艾莉丝努力练剑1 小时前
【AI大模型接入SDK】C++日志体系与spdlog封装的理论部分
开发语言·c++·ide·人工智能·学习·面试·trae
超爱西西鸭1 小时前
鸿蒙ArkTS文件管理:fileIo 文件读写与目录操作
学习·华为·harmonyos·鸿蒙
dear_bi_MyOnly1 小时前
C语言控制语句与循环逻辑精讲
c语言·开发语言·学习·分类
超爱西西鸭1 小时前
ArkTS传感器开发:加速度计与数据监听
学习·华为·harmonyos·鸿蒙
存在morning1 小时前
【PySpark 学习笔记 六】性能优化:分区、Shuffle、缓存与数据倾斜
笔记·学习·性能优化
我爱cope1 小时前
【计算机网络 | 网络层6:IPv4 数据报格式:TTL、分片、首部校验和分别有什么用?】
网络·学习·计算机网络
math_hongfan1 小时前
鸿蒙 ArkTS 国际化:多语言支持与资源管理
学习·华为·harmonyos·鸿蒙