@@IO_BUSY (Transact-SQL)

返回自从 SQL Server 最近一次启动以来,SQL Server 已经用于执行输入和输出操作的时间。其结果是 CPU 时间增量(时钟周期),并且是所有 CPU 的累积值,所以,它可能超过实际消逝的时间。乘以 @@TIMETICKS 即可转换为微秒。

ms177599.note(zh-cn,SQL.90).gif注意:
如果以 @@CPU_BUSY 形式返回时间,或者 @@IO_BUSY 超过累计 CPU 时间大约 49 天,则会收到算术溢出警告。在这种情况下,@@CPU_BUSY、@@IO_BUSY 和 @@IDLE 变量值并不精确。

主题链接图标Transact-SQL 语法约定

语法

@@IO_BUSY

返回类型

integer

备注

若要显示包含几种 SQL Server 统计信息的报告,请运行 sp_monitor

示例

下面的示例返回在开始时间和当前时间之间 SQL Server 已经用于执行输入/输出操作的毫秒数。为了避免将值转换为微秒时出现算术溢出,此示例将其中一个值转换为 float 数据类型。

SELECT @@IO_BUSY*@@TIMETICKS AS 'IO microseconds', 
   GETDATE() AS 'as of'

下面是典型的结果集:

IO microseconds as of                 
--------------- ----------------------
4552312500      3/28/2005 10:29:16 AM 

请参阅

参考

@@CPU_BUSY (Transact-SQL)
sp_monitor (Transact-SQL)
系统统计函数 (Transact-SQL)

帮助和信息

获取 SQL Server 2005 帮助