Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Propiedad Process.PeakVirtualMemorySize64

 

Publicado: octubre de 2016

Obtiene la cantidad máxima de memoria virtual, en bytes, utilizado por el proceso asociado.

Espacio de nombres:   System.Diagnostics
Ensamblado:  System (en System.dll)

[ComVisibleAttribute(false)]
public long PeakVirtualMemorySize64 { get; }

Valor de propiedad

Type: System.Int64

Tamaño máximo de memoria virtual, expresado en bytes, que se asignó para el proceso asociado desde su inicio.

Exception Condition
PlatformNotSupportedException

La plataforma es Windows 98 o Windows Millennium Edition (Windows Me), que no admite esta propiedad.

El valor devuelto por esta propiedad representa el tamaño máximo de memoria virtual usada por el proceso desde que se inició, en bytes. El sistema operativo asigna el espacio de direcciones virtuales para cada proceso a las páginas cargadas en memoria física, o a páginas almacenadas en el archivo de paginación de memoria virtual en el disco.

Esta propiedad puede utilizarse para supervisar el uso de memoria en equipos con procesadores de 32 bits o 64 bits. El valor de propiedad es equivalente a la máximo de Bytes virtuales contador de rendimiento para el proceso.

Win98WinMe

This property is not supported on Windows 98 or Windows Millennium Edition (Windows Me).

En el ejemplo de código siguiente se inicia una instancia de la aplicación Bloc de notas. A continuación, el ejemplo recupera y muestra varias propiedades del proceso asociado. En el ejemplo se detecta cuando se cierra el proceso y muestra sus estadísticas de memoria de código y pico de salida.

using System;
using System.Diagnostics;

namespace ProcessSample
{
    class ProcessMonitorSample
    {
        public static void Main()
        {

            // Define variables to track the peak
            // memory usage of the process.
            long peakPagedMem = 0,
                peakWorkingSet = 0,
                peakVirtualMem = 0;

            Process myProcess = null;

            try
            {
                // Start the process.
                myProcess = Process.Start("NotePad.exe");

                // Display the process statistics until
                // the user closes the program.
                do
                {
                    if (!myProcess.HasExited)
                    {
                        // Refresh the current process property values.
                        myProcess.Refresh();

                        Console.WriteLine();

                        // Display current process statistics.

                        Console.WriteLine("{0} -", myProcess.ToString());
                        Console.WriteLine("-------------------------------------");

                        Console.WriteLine("  physical memory usage: {0}",
                            myProcess.WorkingSet64);
                        Console.WriteLine("  base priority: {0}",
                            myProcess.BasePriority);
                        Console.WriteLine("  priority class: {0}",
                            myProcess.PriorityClass);
                        Console.WriteLine("  user processor time: {0}",
                            myProcess.UserProcessorTime);
                        Console.WriteLine("  privileged processor time: {0}",
                            myProcess.PrivilegedProcessorTime);
                        Console.WriteLine("  total processor time: {0}",
                            myProcess.TotalProcessorTime);
                        Console.WriteLine("  PagedSystemMemorySize64: {0}",
                            myProcess.PagedSystemMemorySize64);
                        Console.WriteLine("  PagedMemorySize64: {0}",
                           myProcess.PagedMemorySize64);

                        // Update the values for the overall peak memory statistics.
                        peakPagedMem = myProcess.PeakPagedMemorySize64;
                        peakVirtualMem = myProcess.PeakVirtualMemorySize64;
                        peakWorkingSet = myProcess.PeakWorkingSet64;

                        if (myProcess.Responding)
                        {
                            Console.WriteLine("Status = Running");
                        }
                        else
                        {
                            Console.WriteLine("Status = Not Responding");
                        }
                    }
                }
                while (!myProcess.WaitForExit(1000));


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

                // Display peak memory statistics for the process.
                Console.WriteLine("Peak physical memory usage of the process: {0}",
                    peakWorkingSet);
                Console.WriteLine("Peak paged memory usage of the process: {0}",
                    peakPagedMem);
                Console.WriteLine("Peak virtual memory usage of the process: {0}",
                    peakVirtualMem);

            }
            finally
            {
                if (myProcess != null)
                {
                    myProcess.Close();
                }
            }
        }

    }
}

LinkDemand

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

.NET Framework
Disponible desde 2.0
Volver al principio
Mostrar: