02 对象及变量的并发访问
synchronize
同步方法
线程安全
方法内变量
非线程安全
实例变量
多个对象多个锁
锁方法与锁对象
脏读
赋值同步,取值未同步
出现异常,锁自动释放
锁重入
类内的方法间
父子继承中
同步不具有继承性
同步语句块
提升执行效率
一半异步、一半同步
对象监视器
不同则异步
3个同步执行的结论
多个线程同时执行synchronized(x)
其他线程执行x对象中同步方法
其他线程执行x对象方法的同步代码块
静态同步方法与synchronized(class)
String的常量池特性
两个线程持相同锁
不使用String作为锁对象
死锁解决
同步方法无限等待
使用同步代码块,不同锁对象
多线程死锁
内部类的同步
volatile
死循环
同步死循环
异步死循环
非原子的特性
原子类i++
AtomicInteger