Java关键字——Syncronized

  Syncronized是一个同步锁,分两类:对象锁、类锁。

一、对象锁:用于对象的实例方法或者一个实例对象上

public synchronized void method() {...}
public void method() {
        synchronized(this) {
            .
            .
            .
    }
}    

  有如下结论:对象的某个同步方法被一个线程访问后,其他线程不能访问该对象的其他同步方法;但是可以访问该对象的非同步方法。

二、类锁:用于类的静态方法或者一个类的class对象上

public static synchronized void method() {...}
public void method() {
    synchronized (xxx.class) {
            .
            .
            .
    }    
}

  对象锁和类锁是相互独立的,互不影响。

posted @ 2019-08-26 19:40  Aion_14  阅读(199)  评论(0)    收藏  举报