跳至內容

並發控制

本頁使用了標題或全文手工轉換
維基百科,自由的百科全書

計算機科學,特別是程序設計操作系統多處理機數據庫等領域,並發控制(英語:Concurrency control)是確保及時糾正由並發操作導致的錯誤的一種機制。

數據庫管理系統中的並發控制

數據庫管理系統(DBMS)中的並發控制的任務是確保在多個事務同時存取數據庫中同一數據時不破壞事務的隔離性和統一性以及數據庫的統一性。下面舉例說明並發操作帶來的數據不一致性問題:

現有兩處火車票售票點,同時讀取某一趟列車車票數據庫中車票餘額為 X。兩處售票點同時賣出一張車票,同時修改餘額為 X -1寫回數據庫,這樣就造成了實際賣出兩張火車票而數據庫中的記錄卻只少了一張。

產生這種情況的原因是因為兩個事務讀入同一數據並同時修改,其中一個事務提交的結果破壞了另一個事務提交的結果,導致其數據的修改被丟失,破壞了事務的隔離性。並發控制要解決的就是這類問題。

封鎖時間戳樂觀並發控制悲觀並發控制是並發控制主要採用的技術手段。

參考文獻

  • 王珊、薩師煊. 数据库系统概论 (M) 4. 北京: 高等教育版社. 2006. ISBN 7-04-019583-6. 

外部連結