不能
其他线程只能访问该对象的非同步方法,同步方法则不能进入。
因为非静态方法上的 synchronized 修饰符要求执行方法时要获得对象的锁,如果已经进入 A 方法说明对象锁已经被取走,那么试图进入 B 方法的线程就只能在等锁池(注意:不是等待池)中等待对象的锁。
58. 当一个线程进入一个对象的 synchronized 方法 A之后,其他线程是否可以进入此对象的 synchronized 方法 B ?
最新推荐文章于 2024-05-05 14:36:53 发布
不能
其他线程只能访问该对象的非同步方法,同步方法则不能进入。
因为非静态方法上的 synchronized 修饰符要求执行方法时要获得对象的锁,如果已经进入 A 方法说明对象锁已经被取走,那么试图进入 B 方法的线程就只能在等锁池(注意:不是等待池)中等待对象的锁。