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

线程间通信

例子:

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

Synchronized实现:

虚假唤醒问题:

我们再添加两个线程。

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

我们只需要使用while即可。

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

Lock实现:

运行结果:

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

相关推荐
Linux-lucky10 小时前
33-Linux学习之旅之MySQL用户管理
java·linux·运维·学习·mysql·ubuntu
柳鲲鹏10 小时前
股票打新,中签为什么难?
笔记
亮工硬件10 小时前
1-8 简易串口通讯协议(UART + 自定义帧协议)
笔记·stm32·单片机·嵌入式硬件·学习
老猿讲编程10 小时前
【Eclipse OpenSOVD学习之二】 SOVD 协议原理与标准背景
学习·eclipse·嵌入式软件·车载·sovd
蓝天下的守望者10 小时前
ARM SOC architecture学习文档整理
arm开发·学习
志尊宝10 小时前
Vue3 零基础每日笔记(004):模板语法初识——插值表达式、v-bind、v-on 一次学会
javascript·vue.js·笔记
SatanII11 小时前
OpenStack核心组件详解|Keystone+Glance+Nova+Cinder原理与实操笔记
网络·笔记·openstack
叶子野格11 小时前
《Verilog学习:前置知识》
学习·fpga开发
wuyk55511 小时前
从零吃透 MQTT 通信|第 6 章 MQTT 主题、过滤器、通配符、订阅管理、拒收机制详解与代码实现
c语言·stm32·学习
点心的游戏开发世界20 小时前
GDScript 入门笔记(十一):Lambda 与匿名函数
开发语言·笔记·游戏引擎·godot