Microsoft.Diagnostics.Runtime is a set of APIs for introspecting processes and dumps.
C# Batchfile
Clone or download
karelz and leculver Update WalkingTheHeap tutorial to latest API shape (#112)
Remaining questions:
* The text about `Committed` should be likely updated.
* Not sure if `ClrHeap.EnumerateObjectAddresses` should be rather replaced with example using `EnumerateObject`
* Examples of `GCHeapType.Enumerate` should be likely replaced - not quite sure with what.
Latest commit c81a592 Jul 5, 2018


Microsoft.Diagnostics.Runtime.dll (nicknamed "CLR MD") is a process and crash dump introspection library. This allows you to write tools and debugger plugins which can do thing similar to SOS and PSSCOR.

For more details, take a look at the documentation and samples.


Please see the FAQ for more information.


Here you will find a step by step walkthrough on how to use the CLR MD API. These tutorials are meant to be read and worked through in linear order to teach you the surface area of the API and what you can do with it.

  1. Getting Started - A brief introduction to the API and how to create a CLRRuntime instance.

  2. The CLRRuntime Object - Basic operations like enumerating AppDomains, Threads, the Finalizer Queue, etc.

  3. Walking the Heap - Walking objects on the GC heap, working with types in CLR MD.

  4. Types and Fields in CLRMD - More information about dealing with types and fields in CLRMD.

  5. Machine Code in CLRMD - Getting access to the native code produced by the JIT or NGEN