Sql-Server

等待時間怎麼會比時鐘時間長?

  • April 29, 2019

當我使用 sp_BlitzFirst 跟踪等待時,我得到了以下詳細資訊:

<?ClickToSeeDetails -- 
For 20 seconds over the last 5 seconds, SQL Server was waiting on this 
particular bottleneck.


-- ?>

那應該是“在過去 5 秒內 20 次”嗎?發現是 CLR_SEMAPHORE。

否 - 等待統計資訊的總和可能(而且通常會)超過伺服器本身花費的物理時間。

想像一下這樣一種情況,其中 2 個單獨的執行緒花費相同的時間等待某個資源 - 您將有 2 秒的等待時間來等待 1 秒的時鐘時間。

每個執行緒都有自己的等待 - 消息告訴您該特定資源的 20 秒等待時間發生在時鐘時間的最後 5 秒內。

或者換一種說法,每個核心可以同時執行多個查詢,多個核心可以加起來更多的等待。也就是說,單位真的是執行緒·秒,而不是秒。

引用自:https://dba.stackexchange.com/questions/208372