Marco Russo

.NET, Business Intelligence e dintorni

News

Microsoft SQL Server & Business Intelligence Conference 2010

Torino Technologies Grou

Corsi

Libri

Miei blog in inglese

Garbage Collector, GC.Collect e Dispose

Il Garbage Collector è uno degli argomenti "base" del framework su cui (stranamente) non ho mai scritto nulla (né nella sezione CLR del sito né nel mio libro CLR Full Contact), nonostante sia un argomento importantissimo in corsi e seminari che tengo; in passato ho anche fatto un webcast sull'argomento che è ancora possibile rivedere.

In questo periodo non ho tempo per scrivere (a parte qualcosa di breve sul blog) per cui consiglierei a tutti di leggere il post di Rico Mariani sull'uso di GC.Collect e su quando possa avere senso richiamarlo. Mi raccomando, non fermatevi al post ma leggete i commenti: molti dimostrano di non conoscere abbastanza bene il funzionamento del Garbage Collector e l'importanza di chiamare Dispose sugli oggetti che implementano IDisposable.

Come dice Rico, sono pochissimi i casi in cui è davvero necessario ricorrere all'uso di GC.Collect. Ricordo che giusto un paio di giorni fa parlavo del CLR Profiler, tool che è molto utile anche per comprendere il funzionamento interno del Garbage Collector.

Sarebbe interessante avere dei feedback su dei problemi riscontrati nel "mondo reale" sia nell'uso da parte vostra che nell'uso che avete visto fare da altri: mi piacerebbe capire se e quanto è un problema diffuso e che ripercussioni ha sulle applicazioni che vanno in produzione. Per me è un argomento quasi scontato ma forse non è così e bisogna fare ancora formazione su questo tema. I commenti sono aperti...