synchronized八锁现象理解

八锁就是关于锁的八个问题

前提A方法 睡4秒 B方法直接执行

synchronized

无static 锁的是方法的调用者 谁先拿到锁谁谁先执行

两个Synchronized 谁先执行 谁输出(同一对象调用)A先

一个写Sy 一个无Sy 不影响 即便同一个对象调用 B先

*static 静态方法 锁的是类 即便两个类的对象调用也是 一个对象调用 A先

(同一对象)一个Static 一个无static 拿到的的不是同一个锁 一个类锁 一个对象锁 不影响 B先输出

(不同对象)一个 Static 一个无Static 同上 不是一把锁 B先

new 表示 this 具体的一个手机
static  锁的Class 唯一的一个模板

你可能感兴趣的:(并发的艺术,java)