Condividi tramite


Raccolta di dati di durata e allocazione di memoria .NET

Le informazioni contenute in questo argomento sono valide per:

Visual Studio Ultimate

Visual Studio Premium

Visual Studio Professional 

Visual Studio Express

Argomento applicabile Argomento applicabile Argomento non applicabile Argomento non applicabile

Negli strumenti di profilatura di Visual Studio è supportata la raccolta di dati sull'allocazione di memoria .NET e sulla durata di oggetti allo scopo di rilevare i problemi di prestazioni correlati alla memoria che si verificano nell'applicazione. 

  • I dati sull'allocazione di memoria .NET includono le dimensioni e il numero di oggetti di memoria .NET Framework che sono stati allocati.

  • I dati sulla durata degli oggetti includono invece le dimensioni e il numero di oggetti di memoria .NET Framework recuperati nelle tre generazioni di Garbage Collection.

È possibile raccogliere dati tramite il metodo di profilo basato su campionamento o su strumentazione.

  • Quando si utilizza il metodo di campionamento, il profiler tiene traccia di tutti gli oggetti e di tutte le allocazioni di memoria .NET generati dal processo avviato o connesso al profiler.

  • Quando si utilizza il metodo di strumentazione, il profiler tiene traccia solo degli oggetti e delle allocazioni di memoria .NET generati dai moduli instrumentati.

Nota importanteImportante

Quando si raccolgono dati di memoria .NET (allocazioni, durata degli oggetti o entrambe) utilizzando il metodo di campionamento, tutti gli eventi di campionamento specificati dall'utente vengono ignorati e gli eventi di allocazione di memoria appropriati vengono utilizzati per raccogliere dati.

Se si abilita il profilo dell'allocazione di memoria .NET, si abilita anche la visualizzazione Allocazione. Se si abilita il profilo dei dati sulla durata degli oggetti .NET, si abilita anche la visualizzazione Durata oggetti. Per ulteriori informazioni, vedere Visualizzazione Allocazioni per la memoria .NET e Visualizzazione Durata oggetti.

Per informazioni sulla raccolta dei dati di memoria .NET tramite gli strumenti da riga di comando disponibili negli strumenti di profilatura, vedere Utilizzo dei metodi di memoria .NET per raccogliere i dati sull'allocazione di memoria e sulla durata degli oggetti in Utilizzo di metodi di profilatura per raccogliere dati di prestazioni tramite la riga di comando.

Per raccogliere i dati di memoria .NET

  1. In Esplora prestazioni fare clic con il pulsante destro del mouse sulla sessione di prestazioni e quindi scegliere Proprietà.

  2. Nella finestra di dialogo Pagine delle proprietà di Sessione prestazioni fare clic sulla scheda Generale e selezionare la casella di controllo Raccogliere le informazioni sull'allocazione dell'oggetto .NET.

  3. Per raccogliere i dati sulla durata degli oggetti .NET, selezionare la casella di controllo Raccogliere anche le informazioni sulla durata dell'oggetto .NET.

Attività comuni

È possibile specificare opzioni aggiuntive nella finestra di dialogo Pagine delle proprietà di Sessione prestazioni della sessione di prestazioni. Per aprire questa finestra di dialogo:

  • In Esplora prestazioni fare clic con il pulsante destro del mouse sul nome della sessione di prestazioni e scegliere Proprietà.

Le attività nella tabella seguente descrivono le opzioni che è possibile specificare nella finestra di dialogo Pagine delle proprietà di Sessione prestazioni quando si raccolgono i dati di memoria .NET.

Attività

Contenuto correlato

Nella pagina Generale specificare i dettagli di denominazione per il file dei dati di profilo (vsp) generato.

Nella pagina Avvio scegliere l'applicazione da avviare se si dispone di più progetti EXE nella soluzione del codice.

Nella pagina Interazione tra livelli aggiungere i dati di chiamata ADO.NET all'esecuzione del profilo.

Nella pagina Eventi Windows specificare uno o più eventi Traccia eventi per Windows (ETW) da raccogliere con i dati di campionamento.

Nella pagina Contatori Windows specificare uno o più contatori di prestazioni del sistema operativo da aggiungere ai dati di profilo come contrassegni.

Nella pagina Avanzate specificare la versione del runtime di .NET Framework di cui eseguire il profilo se i moduli dell'applicazione utilizzano più versioni. Per impostazione predefinita, viene eseguito il profilo della prima versione caricata.

Attività di strumentazione

Le attività nella tabella seguente descrivono le opzioni della finestra di dialogo Pagine delle proprietà specifiche del profilo eseguito con il metodo di strumentazione.

Attività

Contenuto correlato

Nella pagina Binari specificare un percorso per le copie instrumentate dei moduli. Per impostazione predefinita, i binari originali vengono spostati in una cartella di backup.

Nella pagina Strumentazione escludere dal profilo le piccole funzioni per ridurre il sovraccarico del profilo, eseguire il profilo del codice JavaScript nelle pagine Web ASP.NET e specificare i comandi da eseguire in un prompt dei comandi prima e dopo il processo di strumentazione.

Nella pagina Contatori CPU specificare uno o più contatori di prestazioni del processore da aggiungere ai dati di profilo.

Nella pagina Avanzate specificare le opzioni aggiuntive VSInstr.exe desiderate, ad esempio le opzioni per includere o escludere funzioni specifiche. Per ulteriori informazioni sulle opzioni VSInstr, vedere VSInstr.

Vedere anche

Attività

Procedura: scegliere un metodo di raccolta

Concetti

Configurazione di sessioni di prestazioni per gli strumenti di profilatura

Proprietà della sessione di prestazioni