当先锋百科网

首页 1 2 3 4 5 6 7

Java中非static的synchronized方法和synchronized?

Java中非static的synchronized方法和synchronized(this)用的是一把锁,这也说明非静态方法中的synchronized(this)和synchronized关键字

是Java支持中同一把锁。

在Java中,synchronized是用来表示同步的,既可以用synchronized来修饰一个方法,也可以修饰方法里的语句块。

在static方法和非static方法前面加synchronized的区别在于

static的方法属于类方法,它属于Class类范畴,所以static获取到的锁,是属于类的锁。

非static方法获取到的锁,是属于当前对象的锁。

再回到问题它们是一把锁,synchronized是针对一个临界区的,临界区指访问这个地方最多只能在一个线程里面,

它在对象上加锁后进入临界区以此来达到临界区串行访问的目的。

希望可以帮到你!!!

加密java,Java中非static的synchronized方法和synchronized