Share via


Server.EnumProcesses Method (Boolean)

Enumerates a list of processes running on the instance of SQL Server with the option to exclude system processes.

Namespace:  Microsoft.SqlServer.Management.Smo
Assembly:  Microsoft.SqlServer.Smo (in Microsoft.SqlServer.Smo.dll)

Syntax

'Declaration
Public Function EnumProcesses ( _
    excludeSystemProcesses As Boolean _
) As DataTable
'Usage
Dim instance As Server
Dim excludeSystemProcesses As Boolean
Dim returnValue As DataTable

returnValue = instance.EnumProcesses(excludeSystemProcesses)
public DataTable EnumProcesses(
    bool excludeSystemProcesses
)
public:
DataTable^ EnumProcesses(
    bool excludeSystemProcesses
)
member EnumProcesses : 
        excludeSystemProcesses:bool -> DataTable 
public function EnumProcesses(
    excludeSystemProcesses : boolean
) : DataTable

Parameters

  • excludeSystemProcesses
    Type: System.Boolean
    A Boolean value that specifies whether to include system processes in the results.
    If True, system processes are excluded.
    If False, system processes are included.

Return Value

Type: System.Data.DataTable
A DataTable object value that contains a list of processes running on the instance of SQL Server. The table describes the different columns of the returned DataTable.

Column

Data type

Description

Urn

String

The URN string that represents the process.

"Server[@Name='PCNAME']/Process[@Spid='51']", for example.

Name

String

The name of the process.

Spid

Int32

The SQL Server session ID that uniquely identifies the process, see the session_id column in sys.dm_exec_sessions (Transact-SQL).

Login

String

The login running the process.

Host

String

The name of the computer on which the process is running.

Status

String

The status of the process. Running and sleeping, for example.

Command

String

The command currently being executed.

Database

String

The database is which the process is running.

Cpu

Int32

The cumulative time taken by the process in milliseconds. See the cpu_time column in sys.dm_exec_sessions (Transact-SQL).

MemUsage

Int32

The number of pages in the procedure cache that are currently allocated to the process. A negative number indicates that the process is freeing up memory allocated by another process.

BlockingSpid

Int16

The SQL Server procedure ID of the procedure that is blocking the referenced procedure..

IsSystem

Boolean

The value that specifies whether the process is a system process or not.

Program

String

The name of the program the process

ExecutionContextID

Int16

The ID value that uniquely identifies the execution context under which the process is running.

Examples

C#

Server srv = new Server("(local)");

DataTable d = srv.EnumProcesses(false);
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($FALSE)
foreach ($r in $d.Rows)
{
   Write-Host "============================================"
   Foreach ($c in $d.Columns)
   {
      Write-Host $c.ColumnName "=" $r[$c]
   }
}