普通方法肯定是可以进入的,所以这里假设所有的方法都是同步方法
应该分情况讨论:
1、其他方法如果都是synchronized修饰的方法,则不能,因为对象锁已经被占用。
2、如果有static synchronized修饰的方法,则可以,因为static synchronized是将类的字节码作为锁,和对象锁并不是同一把锁。
3、如果本方法中调用了wait()方法,则可以,因为wait()方法会释放当前锁并使线程进入挂起状态。
普通方法肯定是可以进入的,所以这里假设所有的方法都是同步方法
应该分情况讨论:
1、其他方法如果都是synchronized修饰的方法,则不能,因为对象锁已经被占用。
2、如果有static synchronized修饰的方法,则可以,因为static synchronized是将类的字节码作为锁,和对象锁并不是同一把锁。
3、如果本方法中调用了wait()方法,则可以,因为wait()方法会释放当前锁并使线程进入挂起状态。