@@CPU_BUSY (Transact-SQL)

適用於:SQL ServerAzure SQL 受控執行個體

此函數會傳回 SQL Server 自上次開始之後,花費在進行中操作的總時間。 @@CPU_BUSY 傳回的結果是以 CPU 時間遞增或「刻度」來測量。此值會針對所有 CPU 來累計,因此,可能會超出實際的經歷時間。 若要轉換成微秒,請乘以 @@TIMETICKS

注意

如果 @@CPU_BUSY 或 @@IO_BUSY 的傳回時間超出 49 天 (大約) 的累計 CPU 時間,您可能會收到算術溢位的警告。 在這個情況下,@@CPU_BUSY@@IO_BUSY@@IDLE 變數的值並不精確。

Transact-SQL 語法慣例

Syntax

@@CPU_BUSY  

注意

若要檢視 SQL Server 2014 (12.x) 和舊版的 Transact-SQL 語法,請參閱 舊版檔

傳回類型

integer

備註

若要查看包含多項 SQL Server 統計資料的報表,其中包括 CPU 活動,請執行 sp_monitor

範例

此範例會傳回迄今 (到目前的日期和時間為止) 的 SQL Server CPU 活動。 此範例會將其中一個值轉換成 float 資料類型。 以毫秒為單位計算值時,可避免算術溢位問題。

SELECT @@CPU_BUSY * CAST(@@TIMETICKS AS FLOAT) AS 'CPU microseconds',   
   GETDATE() AS 'As of' ;  

以下為結果集。

CPU microseconds As of
---------------- -----------------------
18406250         2006-12-05 17:00:50.600

另請參閱

sys.dm_os_sys_info (Transact-SQL)
@@IDLE (Transact-SQL)
@@IO_BUSY (Transact-SQL)
sp_monitor (Transact-SQL)
系統統計函數 (Transact-SQL)