Synchronized的用法
Synchronized的用法
rainmanqqst 发表于9个月前
Synchronized的用法
  • 发表于 9个月前
  • 阅读 19
  • 收藏 0
  • 点赞 0
  • 评论 0
摘要: 知道synchronized的四种写法么...

Synchronized的大概有4中用法

1.修饰一个方法,如:

public synchronized void count(){

}

在这种情况下,一个对象一次只能有一个线程可以访问该方法。如果是类的不同实现对象,访问同一接口不会受到影响。如果该类中有多个方法都添加了synchronized方法,则一个对象调用其中一个synchronized方法时,该对象的其他线程不允许调用其他synchronized方法

2.修饰一个代码块,如

public void count(){
    synchronized(this){

    }
}

在这种情况下,同一个对象,一次只能有一个线程访问代码块中的代码

3.修饰一个静态方法,如

public synchronized static void count(int time){
        
}

由于静态方法是属于类的,所以该类的所有实现对象,一次只能有一个线程使用该方法

4.修饰一个类,如

public class ThreadSync{

public void count(int time){
        synchronized (ThreadSync.class){
        }
}
}

在这种情况下,该类的所有实现对象,一次只能有一个线程访问代码块中的代码

标签: java 多线程
共有 人打赏支持
粉丝 8
博文 57
码字总数 32306
×
rainmanqqst
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: