对象锁和class锁
Posted myitnews
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对象锁和class锁相关的知识,希望对你有一定的参考价值。
- 对象锁:就是这个锁属于这个类的对象实例,可以通过为类中的非静态方法加synchronized关键字 或者使用 synchronized(this) 代码块,为程序加对象锁。
- Class锁:就是这个锁属于这个Class类,所以即使是不同的实例对象仍然拥有的是同一个锁,可以通过为类中的静态方法加synchronized关键字 或者使用 synchronized(*.Class) 代码块,为程序加Class锁。
Class锁和对象锁是属于不同的锁,属于异步执行,存在争抢作用。
Class锁对当前的*.java文件对应的Class类进行持锁,对这个类的所有实例对象起作用。而对象锁只对自己的实例对象起作用。
以上是关于对象锁和class锁的主要内容,如果未能解决你的问题,请参考以下文章