当一个线程进入一个 synchronized 方法后,其它线程是否可进入此对象(或类)的其他方法
结果(可进入):
sync方法为static方法
对象的普通方法和sync方法均可
static修饰的非sync方法
sync方法为非static方法
static修饰的普通方法和sync方法均可
对象的非sync方法
sync()方法中有wait()方法并执行后,其他线程可访问普通方法和sync方法,无论static或非static
影响条件:
静态sync锁和对象同步锁隔离,两者互不影响;对象锁加在方法上和加在this上效果一样
wait()线程通信方法可以暂停所在线程
原创
2021-06-24 09:56:25 ·
401 阅读 ·
0 评论