@@CPU_BUSY (Transact-SQL)

gäller för:SQL ServerAzure SQL Managed Instance

Denna funktion returnerar den tid som SQL Server har varit i aktiv drift sedan dess senaste start. @@CPU_BUSY returnerar ett resultat mätt i CPU-tidsinsteg, eller "ticks". Detta värde är kumulativt för alla CPU:er, så det kan överstiga den faktiska förflutna tiden. För att omvandla till mikrosekunder, multiplicera med @@TIMETICKS.

Note

Om tiden som returneras i @@CPU_BUSY eller @@IO_BUSY överstiger 49 dagar (ungefär) av den kumulerade CPU-tiden kan du få en aritmetisk överflödesvarning. I det fallet är värdet på @@CPU_BUSY, @@IO_BUSY och @@IDLE variablerna inte korrekta.

Transact-SQL syntaxkonventioner

Syntax

@@CPU_BUSY  

Returtyper

heltal

Remarks

För att se en rapport med flera SQL Server statistik, inklusive CPU-aktivitet, kör sp_monitor.

Examples

Detta exempel returnerar SQL Server CPU-aktivitet, från och med aktuellt datum och tid. Exemplet konverterar ett av värdena till datatypen float . Detta undviker aritmetiska överflödesproblem när man beräknar ett värde i mikrosekunder.

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

Här är resultatet.

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