DCSIMG
Debugging,Silverlight - All Your Base Are Belong To Us

All Your Base Are Belong To Us

Mostly .NET internals and other kinds of gory details

Browse by Tags

All Tags » Debugging » Silverlight (RSS)
New Silverlight SOS.DLL Commands: !FindRoots and !ListNearObj
In this entry, we will examine the last two interesting new commands bundled in the Silverlight SOS.DLL – namely !FindRoots and !ListNearObj .  (Previously in this series: Basic introduction to Silverlight SOS ; The !AnalyzeOOM command ; The !HeapStat and !GCWhere commands .) The !FindRoots command is specifically oriented at understanding memory leaks and object promotion scenarios.  It is a wrapper on top of existing functionality, making analysis more convenient. The key scenario to...
New Silverlight SOS.DLL Commands: !HeapStat and !GCWhere
Another SOS.DLL command new in Silverlight is !HeapStat , featuring statistics on the sizes and available space in the various GC heaps and generations.  (Previously in this series: Basic steps with Silverlight SOS ; The !AnalyzeOOM command .) Because Silverlight applications run within a browser, there’s typically going to be a single GC heap because the browser’s CLR host uses workstation GC.  However, generations and the large object heap (LOH) are still of interest. The following is...
New Silverlight SOS.DLL Command: !AnalyzeOOM
In the conclusion of my previous post on the Silverlight SOS.DLL , I’ve mentioned that some new commands (not present in the desktop CLR version) have been added. The first command we’ll talk about is !AnalyzeOOM , which (as its name implies) analyzes an out of memory condition and explains what went wrong.  There are various reasons for out of memory exceptions, and this command can help you to pinpoint exactly what went wrong. I’ve written a simple Silverlight application that allocates 1MB...
Debugging Silverlight Applications: SOS.DLL
I’ve written about SOS.DLL before – it is the ultimate Swiss-army knife for debugging managed applications.  Memory leaks, unexpected crashes, high-CPU scenarios, hangs and deadlocks can all be pinpointed using SOS. Silverlight 2.0 offers a model for managed code execution inside the browser, and that managed code will require the same debugging capabilities needed for standard managed applications.  The Silverlight CLR ( coreclr.dll ) is a subset of the desktop CLR, but fortunately it...