同步鎖synchronized中的類鎖,物件鎖

2021-10-01 13:49:35 字數 414 閱讀 9351

關於同步鎖的幾篇有用的文章

如果synchronized 修飾的非靜態方法(沒有static修飾),則鎖的是例項物件,物件鎖

synchronized (this)使用的也是物件鎖

如果synchronized 修飾的是靜態方法,則鎖的是類物件,是類鎖

synchronized(synchronizedtest2.class)使用的是類鎖

synchronized修飾非靜態方法和synchronized (this)使用的是同一種鎖

synchronized修飾靜態方法和synchronized(synchronizedtest2.class)使用的是同一把鎖

synchronized (this)和synchronized(synchronizedtest2.class)是非同步的,也就是說用的不是同一把鎖

synchronized 執行緒同步 類級別鎖定

描述 多個執行緒多個鎖,每個執行緒都會去拿到屬於自己的鎖,分別獲得後,執行 synchronized 修飾的方法。1.synchronized 取得的鎖都是物件鎖,而不是把一段 方法的鎖,多個執行緒就持有該所屬的物件鎖。2個物件,執行緒獲取的就是2個不同的鎖 相互午影響 2.有一種情況就是 相同的鎖...

執行緒同步synchronized

synchronized只是保證在同乙個時刻,其他執行緒不能訪問鎖定的資源,但是其他方法或者是變數不能鎖定控制的 synchronized obj 上面語法格式中synchronized後括號裡的obj就是同步監視器,上面 的含義是 執行緒開始執行同步 塊之前,必須先獲得對同步監視器的鎖定。任何時刻...

synchronized同步方法

關鍵字synchronized 如果是在方法內的變數,則無所謂的的變數同步問題。因為在方法內部的變數都是私有的。synchronized如果是加在方法上面,則是對該物件的例項進行同步。如果有兩個執行緒同時對該方法進行操作,則會同步進行。對個例項多個執行緒,不存在同步的問題,那時jvm會生成多個鎖,應...