1. 必須基於對象多線程
Synchronized Method 和 Synchronized(this) 塊,除了範圍小點 (方法和塊),沒差異都是阻塞整個對象 - 若是對象有多個 Synchronized 只能一個執行。this
2. Synchronized(object)spa
最好 - 基於塊,只是須要基於全局對象,或者多線程要訪問的對象線程
3. Synchronized (*.class)對象
類的全部對象實例起做用。class