Introduzione.
Con il rilascio di Visual Studio 2015, avvenuto negli scorsi giorni, vi sono diverse novità per gli sviluppatori rispetto alla versione 2013. Una di queste è il supporto per il debug delle nostre applicazioni, che tratteremo in questi articoli. Questo è il primo di una piccola serie di sette mini articoli, dove spiegheremo con testo e immagini tutte le novità, i miglioramenti e le integrazioni di altri strumenti a quelli già esistenti. Facciamo prima un elenco degli argomenti che tratteremo:
- Diagnostic Tool
- Timeline Tool
- PerfTips
- Le nuove funzionalità dei BreakPoint
- BreakPoint condizionale
- Hit counts
- Tracepoints
- Debug sulle lambda Expression
- UI Debugging tool for XAML
- Network Tool
Diagnostic Tool.
Non si tratta di una vera e propria novità, con questo strumento possiamo:
- Verificare in realtime il consumo di memoria
- Verificare il consumo della cpu (tutti i processori)
- Avere un debugger events
- Verificare la quantità di risorse che consuma la nostra applicazione
- Verificare il livello di performance dell’applicazione
Come detto, questo strumento era disponibile anche in Visual Studio 2013, con la differenza che non era possibile visualizzare in una sola schermata quanto scritto nei punti precedenti. Se avviamo Visual Studio 2013 e aprendo un qualsiasi progetto (io uso la versione professional), dal menù DEBUG e subito dopo prestazioni e diagnostica, vedrete che nella schermata successiva selezionando “Utilizzo memoria” non sarà possibili attivare altri strumenti.
-
la visualizzazione degli eventi di debugger, il consumo di memoria e l’utilizzo della cpu tutti in una sola schermata.
-
In alto a sinistra un menù a tendina dove possiamo scegliere di visualizzare o solo l’utilizzo di memoria o della cpu.
-
altre tre tipologie di visualizzazione che troviamo in basso all’immagine successiva, tra cui Debugger, si tratta di ciò che visualizziamo nella finestra di output al momento che compiliamo la nostra solution. “Utilizzo memoria” con la possibilità di creare degli snapshot, ovvero un visualizzatore di oggetti presenti in memoria, e avere maggiori dettagli con la possibilità di crearne altri per eseguire un poi un confronto, ed infine “Utilizzo CPU”; quest’ultimo però richiede che l’applicazione venga eseguita senza il Debug. Possiamo come in Visual Studio 2013 andare ovviamente a selezionare un lasso di tempo dove vediamo un eccessivo consumo di memoria e crearci come accennato degli snapshot come visibile nelle figure successive.
-
Progetti supportati.
Al momento il diagnostic tool è supportato in queste tecnologie.
- Managed WPF, WinForms, Console projects
- Native Win32, Console, and MFC projects
- ASP.NET projects running on a local IIS and IIS Express
- Managed or Native Windows Store projects
- Debugging sessions started using Debug –> Attach to Process
- Debugging apps running on remote desktop devices
- Windows Store projects that are using JavaScript
- Windows Store projects that are running on a Windows Phone
- Debugging when Managed or Native Compatibility Mode is checked in Tools –> Options –> Debugging