八锁就是关于锁的八个问题
前提A方法 睡4秒 B方法直接执行
synchronized
无static 锁的是方法的调用者 谁先拿到锁谁谁先执行
两个Synchronized 谁先执行 谁输出(同一对象调用)A先
一个写Sy 一个无Sy 不影响 即便同一个对象调用 B先
*static 静态方法 锁的是类 即便两个类的对象调用也是 一个对象调用 A先
(同一对象)一个Static 一个无static 拿到的的不是同一个锁 一个类锁 一个对象锁 不影响 B先输出
(不同对象)一个 Static 一个无Static 同上 不是一把锁 B先
new 表示 this 具体的一个手机
static 锁的Class 唯一的一个模板
本文详细探讨了Java中锁的八大问题,包括非静态同步方法、静态同步方法的执行顺序,以及synchronized关键字在不同场景下的影响。解释了static锁与实例锁的区别,强调了锁对象的选择对并发执行的影响。同时,阐述了new关键字创建的对象与静态成员的关系,帮助理解Java内存模型中的锁概念。
1000

被折叠的 条评论
为什么被折叠?



