Scegliere uno strumento di analisi della memoria in Visual Studio (C#, Visual Basic, C++, F#)
Per trovare perdite di memoria e utilizzo inefficiente della memoria, è possibile usare strumenti come lo strumento di diagnostica dell'utilizzo della memoria integrato nel debugger o strumenti nel Profiler delle performance, ad esempio lo strumento di allocazione degli oggetti .NET e lo strumento di utilizzo della memoria post-mortem. Gli strumenti di Performance Profiler sono destinati principalmente alle build di versione. Per altre informazioni, vedere Eseguire strumenti di profilatura nelle build di rilascio o di debug.
Lo strumento di utilizzo della memoria consente di acquisire una o più istantanee dell'heap della memoria gestita e nativa. È possibile raccogliere snapshot di app .NET, ASP.NET, C++o in modalità mista (.NET e native). Lo strumento utilizzo memoria può essere eseguito in un progetto di Visual Studio aperto, in un'app Microsoft Store installata o in allegato a un'app o a un processo in esecuzione.
Gli sviluppatori .NET possono scegliere tra lo strumento Allocazione oggetti .NET o lo strumento Utilizzo memoria.
- Lo strumento di allocazione di oggetti .NET consente di identificare i modelli di allocazione e le anomalie nel codice .NET e di identificare i problemi comuni con Garbage Collection. Questo strumento viene eseguito solo come strumento post-mortem. È possibile eseguire questo strumento in computer locali o remoti.
- Lo strumento di uso della memoria è utile per identificare le perdite di memoria, che in genere non sono comuni nelle app .NET. Se è necessario utilizzare le funzionalità del debugger durante il controllo della memoria, come ad esempio l'avanzamento del codice passo dopo passo, si consiglia di usare lo strumento di utilizzo della memoria integrato nel debugger. Nel debugger è possibile attivare e disattivare la profilatura della memoria e visualizzare una suddivisione per oggetto dell'utilizzo della memoria. È possibile visualizzare i risultati dell'utilizzo della memoria quando l'esecuzione viene sospesa, ad esempio in corrispondenza di un punto di interruzione.
Gli sviluppatori C++ possono usare lo strumento Utilizzo memoria nelle build di debug o versione:
- Misurare l'utilizzo della memoria nelle compilazioni di debug
- Analizzare l'utilizzo della memoria nelle build di rilascio
Blog e video
Analizzare CPU e memoria durante il debug
blog di Visual C++ : Profilatura della memoria in Visual C++ 2015