Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Aggiornamento: novembre 2007
Le proprietà di un componente Process vengono memorizzate in una cache e vengono utilizzate per memorizzare i valori delle proprietà del processo a cui il componente è associato.
Tali proprietà non vengono inserite fino a quando non viene effettuata la prima richiesta delle proprietà dal processo. A questo punto il componente consente di inserire nelle proprietà presenti nella cache i valori delle proprietà del processo a cui è associato. Queste informazioni non vengono aggiornate dal componente quando vengono effettuate richieste successive dei valori delle proprietà.
Per visualizzare i valori correnti delle proprietà, è necessario chiamare il metodo Refresh del componente Process prima di richiedere i valori delle proprietà del processo. Quando si chiama il metodo Refresh, i valori delle proprietà del componente vengono sostituiti con i dati correnti delle proprietà del processo di destinazione.
Per aggiornare le proprietà del componente Process
Creare un'istanza del processo a livello di codice o aggiungendo un componente Process al progetto in visualizzazione Progettazione. Per ulteriori informazioni, vedere Procedura: eseguire l'associazione a processi esistenti.
Se sono state apportate modifiche alle proprietà del processo prima del recupero delle informazioni sulle proprietà, chiamare il metodo Refresh.
Impostare le proprietà per la lettura delle informazioni appropriate sul processo e assegnare il valore restituito a una variabile.
Nell'esempio riportato di seguito viene illustrato come aprire un'istanza del Blocco note, quindi viene chiamato il metodo Refresh per aggiornare le proprietà del componente. Il codice legge quindi la proprietà WorkingSet64 aggiornata del componente per restituire la quantità totale di memoria allocata per il processo associato. Il valore aggiornato della proprietà viene quindi scritto in una finestra della console sei volte a intervalli di 2 secondi. La console resta aperta per 5 secondi dopo il completamento della routine.
Dim Notepad As New Process() Dim i As Integer Notepad = Process.Start("Notepad.exe") For i = 0 To 5 ' Forces the Process component to get a new set of property values. Notepad.Refresh() ' Writes the property value to the console screen. Console.WriteLine(Notepad.WorkingSet64) ' Waits two seconds before running the next loop. System.Threading.Thread.Sleep(2000) Next ' Closes Notepad and waits 5 seconds before closing the console screen. Notepad.CloseMainWindow() System.Threading.Thread.Sleep(5000)Process notepad; notepad = Process.Start("Notepad"); for (int i = 0; i < 5; i++) { // Forces the Process component to get a new set // of property values. notepad.Refresh(); // Writes the property value to the console screen. Console.WriteLine(notepad.WorkingSet64.ToString()); // Waits two seconds before running the next loop. System.Threading.Thread.Sleep(2000); } // Closes Notepad and waits 5 seconds before closing // the console screen. notepad.CloseMainWindow(); System.Threading.Thread.Sleep(5000);
Vedere anche
Attività
Procedura: eseguire l'associazione a processi esistenti
Procedura: visualizzare i processi in esecuzione
Concetti
Introduzione al monitoraggio e alla gestione di processi Windows