DANIEL VAUGHAN

Conquering ReaderWriterLockSlim Mismatched Enter And Exit Calls

14 Aug 2010

The ReaderWriterLockSlim class is used to protect a resource that is read by multiple threads and written to by one thread at a time. The class exists in the desktop FCL, but is noticeably absent from the Silverlight FCL. To readily support both platforms, some time ago, I incorporated the open-source mono implementation of the ReaderWriterLockSlim class into the Silverlight version of my core library, which is downloadable from http://calcium.codeplex.com/SourceControl/list/changesets ReaderWriterLockSlim is a light-weight alternative...

Read more


Enforcing Single Instance Wpf Applications

01 Aug 2010

Introduction Today the WPF Disciples, and in particular my good friend and fellow WPF Disciple, Pete O’Hanlon, were sitting around the proverbial campfire, discussing how to enforce single instance WPF apps, for Pete’s cool Goldlight project. By single instance WPF apps, I mean limiting an executable to only one instance in execution. This can be useful in scenarios where multiple application instances may play havoc with shared state. I took some time away from writing...

Read more


Writing Windows Phone 7 Unleashed

28 Jul 2010

For the last couple of months I’ve had my head down writing a WP7 book. Entitled Windows Phone 7 Unleashed, it will be published though Sams Publishing. I’m pouring lots of tips and techniques into this book, along with the requisite WP7 development info. The book will lead you through end to end production of WP7 apps, from developing Silverlight and XNA apps, through to certification and publishing on the Windows Phone Marketplace. Figure 1....

Read more


Introducing The Model Thread View Thread Approach

01 May 2010

Reduce threading code, and increase UI responsiveness with a new approach extending MVVM. The article describes an approach that leverages the facilities that make MVVM so effective. The MTVT pattern is an architectural approach used for explicit demarcation of the view and view model via disparate threads of execution. Read on…

Read more


IEnumerable IsNullOrEmpty

18 Apr 2010

String.IsNullOrEmpty is a commonly used method for determining whether a string is null or has a zero length. But, no such method exists in the FCL for collections. A moment ago I whipped up an extension method for IEnumerable types. It’s not rocket science, but I thought I would post it anyway. public static class Extensions { /// <summary> /// Determines whether the collection is null or contains no elements. /// </summary> /// <typeparam name="T">The...

Read more