线程安全之synchronized

  • 锁方法;加在方法上,未获取到对象锁的其他线程都不可以访问该方法
   synchronized  void extendOperatorStatement(ExpressRunner runner) {
...       
}

 

  • 锁Class对象;
    • 加在static方法上相当于给Class对象加锁,哪怕是不同的Java对象实例,也需要排队执行
   synchronized static void extendOperatorStatement(ExpressRunner runner) {
...       
}

 

  • 锁代码块;未获取到对象锁的其他线程可以执行同步代码块之外的代码
void print(){
...
    synchronized(this){
    }      
}
  1.   Synchronized的优势

posted on 2021-03-30 10:32  endian11  阅读(58)  评论(0编辑  收藏  举报

导航