Condividi tramite


Profilatura runtime

La funzione di profiling rappresenta un metodo per ottenere dati relativi alle prestazioni in uno scenario di sviluppo o distribuzione. Questa sezione può essere utile agli sviluppatori e agli amministratori di sistema che desiderino ottenere informazioni sulle prestazioni delle applicazioni.

Rilevamento delle prestazioni mediante la console Performance Monitor (Perfmon.exe)

Performance Monitor (o Monitoraggio affidabilità e Performance Monitor in Windows Vista e Windows 7) è lo strumento più semplice da utilizzare per profilare l'applicazione .NET Framework. Performance Monitor rappresenta graficamente i dati individuati nei contatori delle prestazioni .NET Framework, installati con Common Language Runtime e Windows Software Development Kit (SDK). Questi contatori possono essere utilizzati per monitorare qualsiasi tipo di attività, dalla gestione della memoria alle prestazioni del compilatore JIT (Just-In-Time). I contatori forniscono informazioni sulle risorse utilizzate dall'applicazione e in questo modo misurano indirettamente le prestazioni della stessa. Utilizzare questi contatori per capire come l'applicazione funziona internamente.

Per eseguire Perfmon.exe su Windows Vista

  1. Al prompt dei comandi digitare perfmon. Viene visualizzata la console Prestazioni.

  2. Sulla barra degli strumenti fare clic sull'icona Aggiungi (segno più), se disponibile. In caso contrario, fare clic con il pulsante destro del mouse nella finestra del monitor e selezionare l'opzione Aggiungi contatori.

    Apre la finestra di dialogo Aggiungi contatori, in cui sono visualizzati gli oggetti prestazione e i contatori disponibili. Sono disponibili diversi oggetti predefiniti per le applicazioni .NET Framework, inclusi quelli per gestione della memoria (Memoria CLR .NET), interoperabilità (Interoperabilità CLR .NET), gestione delle eccezioni (Eccezioni CLR .NET) e multithreading (.NET CLR LocksAndThreads). Ogni oggetto prestazione .NET Framework include un numero di singoli contatori delle prestazioni.

  3. Nell'elenco Oggetto prestazione, fare clic sull'oggetto prestazione che si desidera visualizzare.

  4. Nell'elenco dei contatori, fare clic sul contatore prestazioni che si desidera visualizzare.

  5. Fare clic su Tutte le istanze per specificare che si desidera controllare globalmente il contatore delle prestazioni di CLR, ovvero a livello di sistema.

    In alternativa

    Fare clic su Istanze selezionate dall'elenco e selezionare un'applicazione per controllare il contatore delle prestazioni dell'applicazione.

    Per differenziare più versioni del runtime o per risolvere l'ambiguità di più applicazioni con lo stesso nome, è inoltre necessario modificare una chiave del Registro di sistema. Per ulteriori informazioni, vedere Contatori delle prestazioni e applicazioni affiancate in-process.

Per eseguire Perfmon.exe su Windows Vista e Windows 7

  1. Al prompt dei comandi digitare perfmon. Viene visualizzata la console Monitoraggio affidabilità e Performance Monitor (in Windows Vista) oppure la console Performance Monitor (in Windows7).

  2. Nella cartella Strumenti di monitoraggio, fare clic su Performance Monitor.

  3. Sulla barra degli strumenti del Performance Monitor, fare clic sull'icona Aggiungi (segno più), se disponibile. In caso contrario, fare clic con il pulsante destro del mouse nella finestra del monitor e selezionare l'opzione Aggiungi contatori.

    Verrà aperta la finestra di dialogo Aggiungi contatori. Nella casella di riepilogo Contatori disponibili vengono visualizzati gli oggetti prestazione disponibili. Sono disponibili diversi oggetti predefiniti per le applicazioni .NET Framework, inclusi quelli per gestione della memoria (Memoria CLR .NET), interoperabilità (Interoperabilità CLR .NET), gestione delle eccezioni (Eccezioni CLR .NET) e multithreading (.NET CLR LocksAndThreads). Ogni oggetto prestazione include un numero di singoli contatori delle prestazioni.

  4. Selezionare la casella di controllo accanto al nome di un oggetto prestazioni per visualizzare l'elenco dei singoli contatori delle prestazioni supportati.

  5. Selezionare il contatore delle prestazioni che si desidera visualizzare.

  6. Nella casella di riepilogo Istanze dell'oggetto selezionato, fare clic su < Tutte le istanze > per specificare che si desidera controllare globalmente il contatore delle prestazioni di CLR, ovvero a livello di sistema.

    In alternativa

    Nella casella di riepilogo Istanze dell'oggetto selezionato, fare clic sul nome di un'applicazione per controllare il contatore delle prestazioni per quell'applicazione.

    Per differenziare più versioni del runtime o per risolvere l'ambiguità di più applicazioni con lo stesso nome, è inoltre necessario modificare una chiave del Registro di sistema. Per ulteriori informazioni, vedere Contatori delle prestazioni e applicazioni affiancate in-process.

NotaNota

Se si installano nuovi contatori di prestazioni mentre la console Prestazioni è in esecuzione, è necessario arrestare e riavviare la console Prestazioni per rendere visibili i nuovi contatori.

Se si desidera profilare un assembly ubicato in un'area o in una condivisione remota, verificare che l'assembly remoto sia totalmente attendibile per il computer su cui sono in esecuzione i contatori di prestazioni. Se l'assembly non è sufficientemente attendibile, i contatori di prestazioni non funzioneranno. Per informazioni sulla concessione dell'attendibilità per diverse aree, vedere Caspol.exe (strumento per i criteri di sicurezza dall'accesso di codice).

NotaNota

In sistemi nei quali viene installato .NET Framework 4, è possibile che tramite Performance Monitor non vengano visualizzati i dati per i contatori di prestazioni in alcune categorie, ad esempio Dati CLR .NET e Rete CLR .NET, per applicazioni che sono state sviluppate utilizzando .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 a livello di codice dei contatori di prestazioni

In .NET Framework sono disponibili classi che è possibile utilizzare per accedere a livello di codice alle stesse informazioni sulle prestazioni disponibili nella console Prestazioni. È inoltre possibile utilizzare tali classi per creare contatori di prestazioni personalizzati. Nella tabella riportata di seguito sono descritte alcune delle classi di monitoraggio delle prestazioni fornite con .NET Framework.

Classe

Oggetto di descrizione

System.Diagnostics.PerformanceCounter

Rappresenta un componente del contatore di prestazioni di Windows NT. Utilizzare questa classe per leggere contatori predefiniti o personalizzati esistenti e pubblicare (scrivere) dati relativi alle prestazioni nei contatori personalizzati.

System.Diagnostics.PerformanceCounterCategory

Fornisce diversi metodi per interagire con contatori e categorie di contatori sul computer.

System.Diagnostics.PerformanceCounterInstaller

Specifica un programma di installazione per il componente PerformanceCounter.

System.Diagnostics.PerformanceCounterType

Specifica la formula utilizzata per calcolare il metodo NextValue di un'istanza di PerformanceCounter.

Vedere anche

Concetti

Contatori delle prestazioni di ASP.NET

Modello dei criteri di sicurezza

Altre risorse

Contatori di prestazioni in .NET Framework