什麼是臨界區段(Critical section)

因為要操作共用資料,所以同一時間只允許一個執行緒執行的程式部分。以鎖等加以保護,並盡可能縮短。

日文名稱: クリティカルセクション

「臨界區段(Critical section)」出現在1領域的2道練習題中(多核心與同步等)。

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

練習臨界區段(Critical section)的題目

關於臨界區段(critical section),下列說明何者正確?

  1. A為了操作共用資料,同一時間只能有一個執行緒執行的程式部分
  2. B程式中執行時間最長的部分
  3. C只在發生錯誤時才執行的部分
查看答案與解析

正確答案:A. 為了操作共用資料,同一時間只能有一個執行緒執行的程式部分

若多個執行緒同時執行讀取並改寫共用變數的部分,就會發生資料競爭。這種應該同一時間只由一個執行緒執行的部分稱為臨界區段,進入前先取得鎖,離開時釋放,以此加以保護。臨界區段越長,其他執行緒等待的時間也越長,所以基本原則是盡量縮短。

解析中的「臨界區段(Critical section)」

出現「臨界區段(Critical section)」的題目(2題)

  1. 關於臨界區段(critical section),下列說明何者正確?
  2. 關於硬體交易式記憶體(hardware transactional memory)的概念,下列何者正確?

相關名詞

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

前往名詞解釋列表