什麼是無鎖演算法(Lock-free algorithm)
即使有任一執行緒中途停止,其他執行緒中至少仍有一個能繼續推進處理的演算法性質。以 CAS 等原子指令實作。
日文名稱: ロックフリー
「無鎖演算法(Lock-free algorithm)」出現在1領域的1道練習題中(多核心與同步等)。
這個名詞所屬的領域: 多核心與同步
即使有任一執行緒中途停止,其他執行緒中至少仍有一個能繼續推進處理的演算法性質。以 CAS 等原子指令實作。
日文名稱: ロックフリー
「無鎖演算法(Lock-free algorithm)」出現在1領域的1道練習題中(多核心與同步等)。
這個名詞所屬的領域: 多核心與同步
無鎖演算法以CAS等直接更新共用資料,並設計成某個執行緒失敗而重做,只會發生在其他某人成功的時候。
關於無鎖(lock-free)演算法的性質,下列何者正確?中斷 更新(Refresh) 互斥鎖(Mutex) 比較並交換(Compare-and-swap) 目錄式一致性(Directory-based coherence) 交易式記憶體(Transactional memory) 死結(Deadlock) 自旋鎖(Spinlock) 屏障同步(Barrier synchronization) 原子指令(Atomic instruction)