[英]Does the lock on a static synchronized method affect the non-static synchronized methods of it's instances?
假設我有 2 個方法,一個聲明為synchronized
,另一個聲明為static synchronized
。 那么當一個線程獲得類級鎖時,它是否也獲得了它所有實例上的鎖? 換句話說,如果一個線程獲得了一個類級鎖,另一個線程是否可以同時在它的一個實例上獲得一個對象級鎖?
static synchronized
方法將為 class 獲取Class
實例上的鎖。 synchronized
方法將獲取this
上的鎖。 當您通過調用同步的 static 方法獲取 class 級鎖時,對象級鎖不受影響。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.