EnumProcesses 方法 (Int32)
枚举有关指定进程的信息的列表。
命名空间: Microsoft.SqlServer.Management.Smo
程序集: Microsoft.SqlServer.Smo(在 Microsoft.SqlServer.Smo.dll 中)
语法
声明
Public Function EnumProcesses ( _
processId As Integer _
) As DataTable
用法
Dim instance As Server
Dim processId As Integer
Dim returnValue As DataTable
returnValue = instance.EnumProcesses(processId)
public DataTable EnumProcesses(
int processId
)
public:
DataTable^ EnumProcesses(
int processId
)
member EnumProcesses :
processId:int -> DataTable
public function EnumProcesses(
processId : int
) : DataTable
参数
- processId
类型:System. . :: . .Int32
一个 Int32 值,该值指定唯一标识进程的 ID 值。
返回值
类型:System.Data. . :: . .DataTable
一个 DataTable 对象值,该值包含正在 SQL Server 的实例上运行的进程的列表。该表描述所返回的 DataTable 的不同列。
列 |
数据类型 |
说明 |
---|---|---|
Urn |
表示进程的 URN 字符串。 例如“Server[@Name='PCNAME']/Process[@Spid='51']”。 |
|
Name |
进程的名称。 |
|
Spid |
唯一标识进程的 SQL Server 会话 ID,请参阅 sys.dm_exec_sessions (Transact-SQL) 中的 session_id 列。 |
|
登录 |
正在运行进程的登录名。 |
|
Host |
正在运行进程的计算机的名称。 |
|
Status |
进程的状态,例如正在运行或睡眠。 |
|
Command |
当前正在执行的命令。 |
|
数据库 |
正在运行进程的数据库。 |
|
Cpu |
进程所用的累计时间(毫秒)。请参阅 sys.dm_exec_sessions (Transact-SQL) 中的 cpu_time 列。 |
|
MemUsage |
当前为进程分配的过程缓存中的页数。一个负数,指示进程正在释放由另一个进程分配的内存。 |
|
BlockingSpid |
正在阻塞引用的过程的过程的 SQL Server 过程 ID。 |
|
IsSystem |
指定进程是否为系统进程的值。 |
|
Program |
程序的名称。 |
|
ExecutionContextID |
唯一标识运行进程所基于的执行上下文的 ID 值。 |
注释
Use this method to enumerate the processes that are currently running on the instance of SQL Server.
示例
C#
Server srv = new Server("(local)");
DataTable d = srv.EnumProcesses(1);
foreach (DataRow r in d.Rows)
{
Console.WriteLine("============================================");
foreach(DataColumn c in d.Columns)
{
Console.WriteLine(c.ColumnName + " = " + r[c].ToString());
}
}
PowerShell
$srv = new-Object Microsoft.SqlServer.Management.Smo.Server("(local)")
$d = $srv.EnumProcesses(1)
foreach ($r in $d.Rows)
{
Write-Host "============================================"
Foreach ($c in $d.Columns)
{
Write-Host $c.ColumnName "=" $r[$c]
}
}