這個問題在這里已經有了答案: 你什么時候會使用嵌套鎖定? (3 個回答) 昨天關門。
它在這里說:
持有鎖時,持有鎖的執行緒可以再次獲取和釋放鎖。
問題。為了什么目的可以在一個執行緒中使用多個連續的鎖?或者它什么也沒給出,但文章說要澄清在一個執行緒內,第二個鎖中的代碼也將被執行,因為鎖是在同一個執行緒中使用的?
我只是想了解這些資訊的目的。
uj5u.com熱心網友回復:
它稱為遞回鎖定。如果您有可能最終嘗試鎖定資源兩次的復雜路徑(例如在遞回函式中),這將很有用。它使您不必跟蹤您是否已經擁有鎖。
它通常實作為一個計數器,在第一個鎖之后,后續鎖只是增加計數器,解鎖減少,當計數達到 0 時釋放互斥鎖
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/457399.html
