Concurrent Affairs: Solving The Dining Philosophers Problem With Asynchronous Agents
Rick Molloy - June 2009
We use the new Asynchronous Agents Library in Visual C++ 2010 to solve the classic Dining Philosophers concurrency problem.
Concurrent Affairs: More AsyncEnumerator Features
Jeffrey Richter - August 2008
Jeffrey Richter shows you some additional cool features of his AsyncEnumerator class.
Concurrent Affairs: Simplified APM with the AsyncEnumerator
Jeffrey Richter - June 2008
Here Jeffrey Richter introduces his AsyncEnumerator class, which drives an iterator so that different thread pool threads can execute the same code at different times.
Concurrent Affairs: Simplified APM with C#
Jeffrey Richter - November 2007
Jeffrey Richter introduces his AsyncEnumerator class and explains how it harnesses some recent additions to the C# programming language that make working with the asynchronous programming model significantly easier.
Concurrent Affairs: Asynchronous Device Operations
Jeffrey Richter - June 2007
Jeff Richter uses the AsyncResult<TResult> class to implement the CLR’s Asynchronous Programming Model to perform hardware device operations asynchronously.
Concurrent Affairs: Implementing the CLR Asynchronous Programming Model
Jeffrey Richter - March 2007
Concurrent Affairs: The ReaderWriterGate Lock
Jeffrey Richter - November 2006
Concurrent Affairs: Concurrency and Coordination Runtime
Jeffrey Richter - September 2006
What can a robot-programming toolkit do for you? Read on and find out.
Concurrent Affairs: Reader/Writer Locks and the ResourceLock Library
Jeffrey Richter - June 2006
If multiple threads concurrently execute code that writes to or modifies a resource, then obviously the resource must be protected with a thread synchronization lock to ensure that the resource doesn't get corrupted.
Concurrent Affairs: Build a Richer Thread Synchronization Lock
Jeffrey Richter - March 2006
In my last column, I showed the various thread synchronization mechanisms employed by the Microsoft® . NET Framework (see Concurrent Affairs: Performance-Conscious Thread Synchronization). I then examined the performance characteristics of all these mechanisms and determined that the Interlocked methods performed the best because the calling thread never has to transition to kernel mode.
Concurrent Affairs: Performance-Conscious Thread Synchronization
Jeffrey Richter - October 2005
In my career, I have architected and implemented many thread synchronization techniques. This has provided me with a lot of experience that has shaped the way I now think about thread synchronization problems.