synchronized锁普通方法和锁静态方法

Posted 反光的小鱼儿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了synchronized锁普通方法和锁静态方法相关的知识,希望对你有一定的参考价值。

1.对象锁钥匙只能有一把才能互斥,才能保证共享变量的唯一性

    2.在静态方法上的锁,和 实例方法上的锁,默认不是同样的,如果同步需要制定两把锁一样。

    3.关于同一个类的方法上的锁,来自于调用该方法的对象,如果调用该方法的对象是相同的,那么锁必然相同,否则就不相同。比如 new A().x() 和 new A().x(),对象不同,锁不同,如果A的单利的,就能互斥。

    4.静态方法加锁,能和所有其他静态方法加锁的 进行互斥

    5.静态方法加锁,和xx.class 锁效果一样,直接属于类的

 

转载:http://greemranqq.iteye.com/blog/1974143

以上是关于synchronized锁普通方法和锁静态方法的主要内容,如果未能解决你的问题,请参考以下文章

Java并发编程:synchronized和锁优化

synchronized修饰普通方法,修饰静态方法,修饰代码块,修饰线程run方法 比较

synchronized修饰普通方法和静态方法

多线程基础

Java线程:线程的同步与锁

并发编程整理