什麼是讀寫鎖(Reader-writer lock)

只讀取的執行緒可同時進入任意多個,但寫入的執行緒只能有一個,且此時其他任何人都不能進入的鎖。

日文名稱: 読み書きロック

「讀寫鎖(Reader-writer lock)」出現在1領域的1道練習題中(多核心與同步等)。

這個名詞所屬的領域: 多核心與同步

練習讀寫鎖(Reader-writer lock)的題目

關於讀寫鎖(reader-writer lock)的特徵,下列何者正確?

  1. A寫入的執行緒可以有任意多個同時進入,但讀取的執行緒只能有1個
  2. B只讀取的執行緒可以有任意多個同時進入,但寫入的執行緒只能有1個,且此時其他任何人都不能進入
  3. C無論讀取或寫入,一定只能有1個執行緒進入
查看答案與解析

正確答案:B. 只讀取的執行緒可以有任意多個同時進入,但寫入的執行緒只能有1個,且此時其他任何人都不能進入

只讀取的話,同時進行也不會破壞資料,所以讀寫鎖允許讀取者之間同時執行,只讓寫入者獨占。對於像設定表這種常被讀取、很少被改寫的資料,可以提高平行度。不過若讀取者源源不絕,寫入者可能一直進不去,因此有些實作會設計成讓寫入者優先。

解析中的「讀寫鎖(Reader-writer lock)」

出現「讀寫鎖(Reader-writer lock)」的題目(1題)

  1. 關於讀寫鎖(reader-writer lock)的特徵,下列何者正確?

相關名詞

互斥鎖(Mutex) 比較並交換(Compare-and-swap) 目錄式一致性(Directory-based coherence) 交易式記憶體(Transactional memory) 死結(Deadlock) 自旋鎖(Spinlock) 屏障同步(Barrier synchronization) 原子指令(Atomic instruction) 記憶體一致性模型(Memory consistency model) 記憶體屏障(Memory barrier)

前往名詞解釋列表