Поделиться через


Метод 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, указывающее значение идентификатора, который однозначно определяет процесс.

Возвращаемое значение

Тип: System.Data. . :: . .DataTable
Значение объекта DataTable, которое содержит список процессов, запущенных в экземпляре SQL Server. В следующей таблице приводится описание различных столбцов возвращаемого набора DataTable.

Столбец

Тип данных

Описание

Urn

String

Строка универсального имени ресурса, представляющая процесс.

Пример: «Server[@Name='PCNAME']/Process[@Spid='51']».

Название

String

Имя процесса.

Spid

Int32

Идентификатор сеанса SQL Server, который однозначно определяет процесс, указывается в столбце session_id в sys.dm_exec_sessions (Transact-SQL).

Имя входа

String

Имя входа, с использованием которого был запущен процесс.

Узел

String

Имя компьютера, на котором запущен процесс.

Состояние

String

Состояние процесса, например, выполняется или бездействует.

Команда

String

Команда, выполняемая в данный момент.

База данных

String

База данных, в которой выполняется процесс.

ЦП

Int32

Совокупное время выполнения процесса в миллисекундах. См. столбец cpu_time в sys.dm_exec_sessions (Transact-SQL).

MemUsage

Int32

Количество страниц в кэше процедур, выделенных в данный момент для этого процесса. Отрицательное значение показывает, что процесс освобождает память, выделенную другим процессом.

BlockingSpid

Int16

Идентификатор процедуры SQL Server, блокирующий процедуру, на которую приведена ссылка.

IsSystem

Boolean

Значение, указывающее, является ли процесс системным.

Program

String

Имя программы для обработки.

ExecutionContextID

Int16

Значение идентификатора, однозначно определяющее контекст выполнения процесса.

Замечания

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]
   }
}