🍅 Java学习路线:搬砖工逆袭Java架构师
🍅 简介:Java领域优质创作者🏆、CSDN哪吒公众号作者✌ 、Java架构师奋斗者💪
🍅 扫描主页左侧二维码,加入群聊,一起学习、一起进步
🍅 欢迎点赞 👍 收藏 ⭐留言 📝
目录
1、notify() 和 notifyAll() 有什么区别?
十、synchronized 和 volatile 的区别是什么?
一、前言
线程安全是并发编程中的重要关注点,应该注意到的是,造成线程安全问题的主要原因有两点,一是存在共享数据,二是存在多条线程操作共享数据。当存在多个线程操作共享数据时,需要保证同一时刻有且仅有一个线程在操作共享数据,其它线程必须等到该线程处理完数据之后才能进行,这种方式有个高尚的名词叫互斥锁,即能达到互斥访问的目的的锁。在Java中关键字synchronized可以保证在同一个时刻,只有一个线程可以执行某个方法或某个代码块。同时我们还应该注意到synchronized另外一个重要的作用,synchro