最赞回答 / aka_KK
当然不行了,这个你打开IDE试一下不就知道了嘛?synchronized的两种用法:1.对象锁 方法锁(修饰方法,默认锁对象为this当前实例对象) 同步代码块锁(修饰代码块,自己指定锁对象)2.类锁 修饰静态的方法或指定锁为Class对象(同步代码块使用Class对象做锁)
2019-02-19
最赞回答 / qq_Wzl_3
我对jvm不太了解,但用Linux中的给你解释下。
当一个线程想去获取一把锁而获取不到时,是处在一个死循环状态。
while( 没有得到锁)
{
尝试获取锁;
}
所以就相当于死在了这个循环里面。
当然还有尝试锁,先尝试获取,没获取到就退出,而不是死在循环中。
锁的内容还有很多,慢慢学吧。
2019-01-09