Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
WorkingSet Property

Process.WorkingSet Property

Note: This API is now obsolete.

Gets the associated process's physical memory usage, in bytes.

Namespace:  System.Diagnostics
Assembly:  System (in System.dll)

'Declaration
<ObsoleteAttribute("This property has been deprecated.  Please use System.Diagnostics.Process.WorkingSet64 instead.  http://go.microsoft.com/fwlink/?linkid=14202")> _
<MonitoringDescriptionAttribute("ProcessWorkingSet")> _
Public ReadOnly Property WorkingSet As Integer

Property Value

Type: System.Int32
The total amount of physical memory the associated process is using, in bytes.

ExceptionCondition
PlatformNotSupportedException

The platform is Windows 98 or Windows Millennium Edition (Windows Me), which does not support this property.

The value returned by this property represents the current size of working set memory used by the process, in bytes. The working set of a process is the set of memory pages currently visible to the process in physical RAM memory. These pages are resident and available for an application to use without triggering a page fault.

The working set includes both shared and private data. The shared data includes the pages that contain all the instructions that the process executes, including the process modules and the system libraries.

The following example starts an instance of Notepad. The example then retrieves and displays various properties of the associated process. The example detects when the process exits, and displays the process' exit code.

Imports System
Imports System.Diagnostics
Imports System.Threading

Namespace Process_Sample
   Class MyProcessClass

      Public Shared Sub Main()
         Try 

            Dim myProcess As Process
            myProcess = Process.Start("NotePad.exe")

            While Not myProcess.HasExited

               Console.WriteLine()

               ' Get physical memory usage of the associated process.
               Console.WriteLine("Process's physical memory usage: " + _
                                      myProcess.WorkingSet.ToString)
               ' Get base priority of the associated process.
               Console.WriteLine("Base priority of the associated process: " + _
                                      myProcess.BasePriority.ToString)
               ' Get priority class of the associated process.
               Console.WriteLine("Priority class of the associated process: " + _
                                      myProcess.PriorityClass.ToString)
               ' Get user processor time for this process.
               Console.WriteLine("User Processor Time: " + _
                                      myProcess.UserProcessorTime.ToString)
               ' Get privileged processor time for this process.
               Console.WriteLine("Privileged Processor Time: " + _
                                   myProcess.PrivilegedProcessorTime.ToString)
               ' Get total processor time for this process.
               Console.WriteLine("Total Processor Time: " + _
                                     myProcess.TotalProcessorTime.ToString)
               ' Invoke overloaded ToString function.
               Console.WriteLine("Process's Name: " + myProcess.ToString)
               Console.WriteLine("-------------------------------------")

               If myProcess.Responding Then
                  Console.WriteLine("Status:  Responding to user interface")
                  myProcess.Refresh()
               Else
                  Console.WriteLine("Status:  Not Responding")
               End If
               Thread.Sleep(1000)
            End While

            Console.WriteLine()
            Console.WriteLine("Process exit code: {0}", myProcess.ExitCode)

         Catch e As Exception
            Console.WriteLine("The following exception was raised: " + e.Message)
         End Try 
      End Sub 'Main
   End Class 'MyProcessClass
End Namespace 'Process_Sample

.NET Framework

Supported in: 1.1
Obsolete (compiler warning) in 4.6
Obsolete (compiler warning) in 4.6
Obsolete (compiler warning) in 4.5
Obsolete (compiler warning) in 4.5.1
Obsolete (compiler warning) in 4.5.2
Obsolete (compiler warning) in 4
Obsolete (compiler warning) in 3.5
Obsolete (compiler warning) in 3.5 SP1
Obsolete (compiler warning) in 3.0
Obsolete (compiler warning) in 3.0 SP1
Obsolete (compiler warning) in 3.0 SP2
Obsolete (compiler warning) in 2.0
Obsolete (compiler warning) in 2.0 SP1
Obsolete (compiler warning) in 2.0 SP2

.NET Framework Client Profile

Obsolete (compiler warning) in 4
Obsolete (compiler warning) in 3.5 SP1

  • LinkDemand 

    for full trust for the immediate caller. This member cannot be used by partially trusted code.

Show:
© 2015 Microsoft