2016-12-07 24 views
3

這是之前回答的問題,但這是關於SQL Server中檢查點進程內部的更具體的問題。檢查點塊是否寫入?

當一個檢查點正在運行並且數據頁正在寫入磁盤中間時,嘗試獲取該頁上的排它鎖存器的線程會發生什麼情況?

回答

0

鎖存器是什麼?

鎖存器是使用SQL Server來保護共享數據結構在內存中,即使是閱讀輕量級同步對象,寫

檢查點會將所有髒頁到磁盤..

你的問題是:

嘗試在該頁面上獲得排它鎖定的線程會發生什麼情況?

不會被丟棄到磁盤..

的SQL Server可以確保頁面不同時多次讀入緩衝池,而且頁面沒有緩衝池丟棄,當它們當前被查詢訪問時。

參考文獻:
http://www.sqlpassion.at/archive/2014/06/23/introduction-to-latches-in-sql-server/