可重入互斥鎖

計算機科學中 ， 可重入互斥鎖  是互斥鎖的一種 ， 同一線程對其多次加鎖不會產生死鎖 。 可重入互斥鎖也稱遞歸互斥鎖  或遞歸鎖  。 如果對已經上鎖的普通互斥鎖進行 「 加鎖 」 操作 ， 其結果要麼失敗 ， 要麼會阻塞至解鎖 。 而如果換作可重入互斥鎖 ， 當且僅當嘗試加鎖的線程就是持有該鎖的線程時 ， 類似的加鎖操作就會成功 。 可重入互斥鎖一般都會記錄被加鎖的次數 ， 只有執行相同次數的解鎖操作纔會真正解鎖 。 遞歸互斥鎖解決了普通互斥鎖不可重入的問題 ： 如果函數先持有鎖 ， 然後執行回調 ， 但回調的內容是調用它自己 ， 就會產生死鎖 。