平行程式設計

3 Articles

高效能鎖定機制 Parking Lot 與 Sequence Lock

本文探討 Parking Lot–Based Locks 和 Sequence Lock 兩種高效能鎖定機制,分析其設計原理、實作方式及應用場景,並提供 Rust 程式碼範例。Parking Lot–Based Locks 藉由全域資料結構實作小型互斥鎖,適用於細粒度鎖定;Sequence Lock

Rust原子操作與記憶體模型

本文探討 Rust 中的原子操作和記憶體模型,並分析其在實際開發中的應用。原子操作確保多執行緒環境下資料安全存取,Rust 的 `std::sync::atomic`

條件變數與讀寫鎖深度解析

本文探討條件變數與讀寫鎖的實作細節與效能最佳化策略,涵蓋虛假喚醒的避免、精確控制喚醒數量、讀寫鎖的狀態轉換與 Rust 實作範例,並分析可能的挑戰,例如避免寫入者忙等待和飢餓問題,以及更高效的等待機制、更公平的鎖分配和更好的擴充套件性。