Monday, 12 April 2010
« SOSEX v2 Now Available | Main | SOSEX v4 Update »

I’ve finally completed a new release of SOSEX.  This latest release is compatible with .NET 2.0 and 4.0, and it contains several new goodies as well as some major enhancements to existing functionality.  Here’s an overview:

Enhancements
  • .NET 4.0 support for all commands
  • !dlk now supports ReaderWriterLock as well as the existing SyncBlock functionality
  • !mk now allows you to list locals and parameters inline with the stack trace
  • !strings now supports wildcard searches and also now allows you to search user strings in module metadata
  • !mdt now supports collection expansion (currently Array, ArrayList, List, Hashtable and Dictionary)
  • !mdt now allows you to specify a maximum recursion level for the –r option,
  • !mdt is smarter about how it interprets arguments, allowing you to pass arguments in any order
  • !mdt now supports field paths, so instead of looking through a complex hierarchy, you can pass a field path explicitly (myLocal.field1.subfield, etc…)
  • !mx now provides more information for each item, including the metadata type, MethodDesc, MethodTable and field type, as applicable.
  • Many minor bug fixes
New Commands
  • !finq – List the contents of the finalization queue
  • !frq – List the contents of the f-reachable queue
  • !gch – List GCHandles
  • !rwlock – List all ReaderWriterLock instances, or list the details of a specific instance by passing an address.

Please be sure to take a look at the !help (or !sosexhelp) command, or open the readme.txt file for details, options and examples for each command.  As always, if you notice any problems or bugs, please contact me to report them.  There are actually four other new commands that I’ve withheld temporarily in order to tighten them up, so I’ll fix any reported bugs while I’m working to complete the new commands.  Expect the new commands within the next month or so.

Enjoy SOSEX v4.0!

Download: 32-bit  64-bit