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.
Annotazioni
Questo articolo è specifico di .NET Framework. Non si applica alle implementazioni più recenti di .NET, incluse .NET 6 e versioni successive.
La profilatura è un metodo per raccogliere dati sulle prestazioni in qualsiasi scenario di sviluppo o distribuzione. Questa sezione è destinata agli sviluppatori e agli amministratori di sistema che vogliono raccogliere informazioni sulle prestazioni dell'applicazione.
Rilevamento delle prestazioni tramite Performance Monitor (Perfmon.exe)
Performance Monitor è lo strumento più semplice da usare per profilare l'applicazione .NET Framework. Performance Monitor rappresenta graficamente i dati presenti nei contatori delle prestazioni di .NET Framework installati con Common Language Runtime e Windows SDK. Questi contatori possono essere usati per monitorare tutti gli elementi, dalla gestione della memoria alle prestazioni del compilatore JIT .These counters can be used to monitor everything from memory management to just-in-time (JIT) compiler performance. Vengono fornite informazioni sulle risorse usate dall'applicazione, ovvero una misura indiretta delle prestazioni dell'applicazione. Usare questi contatori per comprendere il funzionamento interno dell'applicazione.
Per eseguire Perfmon.exe in Windows Vista e versioni successive
Al prompt dei comandi digitare perfmon. Viene visualizzata la console di Performance Monitor .
Nella cartella Strumenti di monitoraggio fare clic su Performance Monitor.
Nella barra degli strumenti di Performance Monitor fare clic sull'icona Aggiungi (segno più), se presente. Se non è presente, fare clic con il pulsante destro del mouse nella finestra di monitoraggio e selezionare l'opzione Aggiungi contatori .
Verrà visualizzata la finestra di dialogo Aggiungi contatori . Nella casella di riepilogo Contatori disponibili vengono visualizzati gli oggetti delle prestazioni disponibili. Esistono diversi oggetti predefiniti per le applicazioni .NET Framework, inclusi quelli per la gestione della memoria (memoria CLR.NET), l'interoperabilità (interoperabilità CLR.NET), la gestione delle eccezioni (eccezioni CLR.NET) e il multithreading (blocchi CLR.NETAndThreads). Ogni oggetto prestazioni include una serie di singoli contatori delle prestazioni. Per un elenco dei contatori delle prestazioni disponibili in Performance Monitor, vedere Contatori delle prestazioni.
Selezionare la casella di controllo accanto al nome di un oggetto prestazioni per visualizzare l'elenco dei singoli contatori delle prestazioni supportati.
Fare clic sul contatore delle prestazioni da visualizzare.
Nella casella di riepilogo Istanze dell'oggetto selezionato fare clic su <Tutte le istanze> per specificare che si vuole monitorare il contatore delle prestazioni per Common Language Runtime a livello globale, ovvero a livello di sistema.
oppure
Nella casella di riepilogo Istanze dell'oggetto selezionato fare clic sul nome di un'applicazione per monitorare il contatore delle prestazioni per tale applicazione.
Per distinguere più versioni del runtime o per evitare ambiguità tra più applicazioni con lo stesso nome, è necessario modificare anche una chiave del Registro di sistema. Per ulteriori informazioni, vedere Contatori delle prestazioni e applicazioni lato-By-Side In-Process.
Annotazioni
Quando vengono installati nuovi contatori delle prestazioni durante l'esecuzione della console Prestazioni, arrestare e riavviare la console Prestazioni per rendere visibili i nuovi contatori.
Se si desidera analizzare le prestazioni di un assembly presente in una zona o in una condivisione remota, assicurarsi che l'assembly remoto disponga di fiducia completa nel computer che esegue i contatori delle prestazioni. Se l'assembly non dispone di attendibilità sufficiente, i contatori delle prestazioni non funzioneranno. Per informazioni sulla concessione dell'attendibilità a diverse zone, vedere Caspol.exe (Strumento dei criteri di sicurezza per l'accesso al codice).
Annotazioni
Nei sistemi in cui è installato .NET Framework 4, Performance Monitor potrebbe non visualizzare i dati per i contatori delle prestazioni in alcune categorie, ad esempio .NET CLR Data e .NET CLR Networking, per le applicazioni sviluppate con .NET Framework 1.1. In questo caso, è possibile configurare Performance Monitor per visualizzare questi dati aggiungendo l'elemento <forcePerformanceCounterUniqueSharedMemoryReads> al file di configurazione dell'applicazione.
Lettura e creazione di contatori delle prestazioni a livello di codice
.NET Framework fornisce classi che è possibile usare per accedere a livello di codice alle stesse informazioni sulle prestazioni disponibili nella console Prestazioni. È anche possibile usare queste classi per creare contatori delle prestazioni personalizzati. Nella tabella seguente vengono descritte alcune delle classi di monitoraggio delle prestazioni fornite in .NET Framework.
Classe | Descrizione |
---|---|
System.Diagnostics.PerformanceCounter | Rappresenta un componente del contatore delle prestazioni di Windows. Usa questa classe per leggere i contatori predefiniti o personalizzati esistenti e scrivere (pubblicare) dati sulle prestazioni nei contatori personalizzati. |
System.Diagnostics.PerformanceCounterCategory | Fornisce diversi metodi per interagire con contatori e categorie di contatori nel computer. |
System.Diagnostics.PerformanceCounterInstaller | Specifica un programma di installazione per il PerformanceCounter componente. |
System.Diagnostics.PerformanceCounterType | Specifica la formula per calcolare il NextValue metodo per un oggetto PerformanceCounter . |