semaphore 使用詳解 用信號量Semaphore實現(xiàn)互斥鎖Mutex要注意什么?
用信號量Semaphore實現(xiàn)互斥鎖Mutex要注意什么?Mutex Mutex只用于保護關(guān)鍵區(qū)域的代碼(訪問共享資源),而不用于同步鎖。也就是說,在一個線程釋放互斥鎖之后,它可以立即獲得相同的鎖,而
用信號量Semaphore實現(xiàn)互斥鎖Mutex要注意什么?
Mutex Mutex只用于保護關(guān)鍵區(qū)域的代碼(訪問共享資源),而不用于同步鎖。也就是說,在一個線程釋放互斥鎖之后,它可以立即獲得相同的鎖,而不管其他線程是否在等待互斥鎖。信號量不僅可以保護關(guān)鍵區(qū)域,還可以用于鎖同步。也就是說,在線程釋放信號量之后,它將確保等待信號量的線程首先執(zhí)行,而不是立即獲取相同的信號量。如果兩個線程希望通過鎖輸出1、2、1、2、1、2的序列,則應(yīng)使用信號量,而互斥可能導(dǎo)致1、1、1、2、2、11。