java中锁的概念 Java中非static的synchronized方法和synchronized(this)用的是一个锁吗?
浏览量:2149
时间:2021-04-10 17:24:32
作者:admin
Java中非static的synchronized方法和synchronized(this)用的是一个锁吗?
Java中非static的synchronized方法和synchronized(this)用的是一把锁,这也说明非静态方法中的synchronized(this)和synchronized关键字
是Java支持中同一把锁。
在Java中,synchronized是用来表示同步的,既可以用synchronized来修饰一个方法,也可以修饰方法里的语句块。
在static方法和非static方法前面加synchronized的区别在于
static的方法属于类方法,它属于Class类范畴,所以static获取到的锁,是属于类的锁。
非static方法获取到的锁,是属于当前对象的锁。
再回到问题它们是一把锁,synchronized是针对一个临界区的,临界区指访问这个地方最多只能在一个线程里面,
它在对象上加锁后进入临界区以此来达到临界区串行访问的目的。
希望可以帮到你!!!
java中锁的概念 java中锁的实现原理 java中的各种锁
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。