Alessandro Del Sole's Blog

{ A programming space about Microsoft® .NET® }
posts - 1909, comments - 2047, trackbacks - 352

My Links

News

Your host

This is me! Questo spazio è dedicato a Microsoft® .NET®, di cui sono molto appassionato :-)

Cookie e Privacy

Disabilita cookie ShinyStat

Microsoft MVP

My MVP Profile

Microsoft Certified Professional

Microsoft Specialist

Xamarin Certified Mobile Developer

Il mio libro su VB 2015!

Pre-ordina il mio libro su VB 2015 Pre-ordina il mio libro "Visual Basic 2015 Unleashed". Clicca sulla copertina per informazioni!

Il mio libro su WPF 4.5.1!

Clicca sulla copertina per informazioni! E' uscito il mio libro "Programmare con WPF 4.5.1". Clicca sulla copertina per informazioni!

These postings are provided 'AS IS' for entertainment purposes only with absolutely no warranty expressed or implied and confer no rights.
If you're not an Italian user, please visit my English blog

Le vostre visite

I'm a VB!

Guarda la mia intervista a Seattle

Follow me on Twitter!

Altri spazi

GitHub
I miei progetti open-source su GitHub

Article Categories

Archives

Post Categories

Image Galleries

Privacy Policy

Historical Debugger in Visual Studio 2010

Visual Studio 2010, nelle sue edizioni Team System, offre un nuovo importante strumento chiamato Historical Debugger. Si tratta di uno strumento che ci consente di cambiare un po' il modo di pensare il debug e, come il nome lascia intendere, offre una visualizzazione storica degli accadimenti che si verificano nel corso dell'esecuzione dell'applicazione.

Immaginiamo di avere un progetto Visual Basic per la Console, in cui ci sia la seguente riga di codice che tenta di leggere un file inesistente:

        Dim myFile As String = My.Computer.FileSystem.ReadAllText("C:\TextFile.Txt")

Se proviamo ad avviare l'applicazione, chiaramente il debugger classico interromperà l'esecuzione mostrando la finestra relativa a una FileNotFoundException. Se andiamo nel menu Debug, selezioniamo il sottomenu Windows e quindi il comando Debug History, attiveremo l'Historical Debugger che si presenta come in figura:

Come possiamo vedere, vengono riprodotti i vari step dell'esecuzione fino al momento in cui la stessa è stata interrotta. In particolare, per ora possiamo vedere come il primo step sia l'avvio dell'esecuzione e come il secondo sia una sorta di evento che rappresenta l'inizializzazione di uno stream sul file di testo da noi specificato. Quello che è interessante è che ci viene mostrato anche il thread che sta lavorando. Ci viene anche data la possibilità di lavorare con alcune consuete finestre di debug, come Stack e Autos, che vedremo dopo. La seconda fase della cronistoria del debug prevede il verificarsi dell'eccezione:

In realtà questo tipo di approccio ci può permettere di eliminare l'utilizzo dei breakpoint, sebbene questo esempio sia davvero piccolo ma in un esempio di codice più complesso si può apprezzare di più. Il debugger quindi si ferma al rilevamento dell'eccezione, che, come si può vedere, è stata generata alla linea 4 del codice:

Se poi vogliamo controllare lo stack delle chiamate, facciamo click su Call Stack per aprire l'omonima finestra e vedere come gli errori si verificano nel corso delle chiamate stesse.

L'Historical Debugger offre molte altre funzionalità, che però vedremo in post successivi. Ora sapete che esiste e, se avete già scaricato la Beta 1 di Visual Studio 2010, potete iniziare a giocarci.

Alessandro

Print | posted on venerdì 17 luglio 2009 13:34 | Filed Under [ Visual Studio 2010 ]

Powered by:
Powered By Subtext Powered By ASP.NET