Advertisement

synchronized的四种用法

阅读量:

一 修饰方法

对方法进行同步修饰的操作较为简便,只需在方法定义前添加synchronized关键字。这种方式与使用synchronized修饰代码块存在相似之处,但二者所限定的作用范围有所不同。具体而言,当synchronized用于代码块时,其作用范围仅限于被大括号所包围的代码段;而当其用于修饰方法时,则作用范围覆盖整个函数体。

例如:

方法一:

复制代码

public synchronized void method()

{

复制代码
// todo

}

复制代码
java
复制代码
第二种方式:

public void method()

{

复制代码
synchronized(this) {

   // todo

}

}

复制代码
写法一修饰的对象为一个方法,而写法二修饰的是一个代码块,但写法一与写法二在功能上是等价的,均实现了对整个方法内容的锁定。

synchronized关键字不具备继承特性。  
尽管可以使用synchronized来修饰方法,但该关键字并非方法定义的组成部分,因此无法被继承。若父类中的某个方法使用了synchronized关键字,并且子类对该方法进行了重写,则子类中对应的方

全部评论 (0)

还没有任何评论哟~