Procedura: analizzare l'utilizzo della memoria per i processi

Aggiornamento: novembre 2007

Se è necessario visualizzare le statistiche sull'utilizzo della memoria per un processo, il componente Process fornisce sei proprietà relative all'utilizzo della memoria accessibili in fase di esecuzione. A ciascuna proprietà è associata una statistica differente relativa all'allocazione della memoria.

Per analizzare l'utilizzo della memoria per un processo

  1. Associare un'istanza del componente Process al processo. Per ulteriori informazioni, vedere Procedura: eseguire l'associazione a processi esistenti.

  2. Per aggiornare la cache delle proprietà, chiamare il metodo Refresh. Per ulteriori informazioni, vedere Procedura: aggiornare le proprietà del componente Process.

  3. Leggere la proprietà per l'utilizzo della memoria desiderata facendo riferimento alla proprietà in questione.

    Proprietà

    Valore restituito

    PrivateMemorySize64

    Il numero di byte allocato durante il processo associato e che non può essere condiviso con altri processi.

    PeakVirtualMemorySize64

    La quantità massima di memoria allocata durante il processo e che può essere scritta nel file di paging virtuale.

    PagedSystemMemorySize

    La quantità di memoria allocata nel sistema per conto del processo associato e che può essere scritta nel file di paging della memoria virtuale.

    PagedMemorySize

    La quantità di memoria allocata dal processo associato e che può essere scritta nel file di paging della memoria virtuale.

    NonpagedSystemMemorySize

    La quantità di memoria allocata nel sistema per conto del processo associato e che non può essere scritta nel file di paging della memoria virtuale.

    Nell'esempio riportato di seguito viene illustrato come utilizzare il componente Process per leggere la proprietà PrivateMemorySize64 per il Blocco note e assegnare il valore della proprietà restituito a NotepadMemory. Il valore viene quindi visualizzato in una console. Poiché Component1(0) è una nuova istanza del componente Process, non è necessario aggiornare la cache delle proprietà.

    Dim NotepadMemory As Long
    Dim component1() As Process
    component1 = Process.GetProcessesByName("Notepad.exe")
    NotepadMemory = component1(0).PrivateMemorySize64
    Console.WriteLine("Memory used: " & NotepadMemory & ".")
    
         long memory;
            Process[] notepads;
            notepads = Process.GetProcessesByName("Notepad.exe");
            memory = notepads[0].PrivateMemorySize64;
            Console.WriteLine("Memory used: {0}.", memory);
    

Vedere anche

Attività

Procedura: eseguire l'associazione a processi esistenti

Concetti

Introduzione al monitoraggio e alla gestione di processi Windows

Altre risorse

Recupero di informazioni sui processi