If you have developed traditional Windows Client/Server applications on single-CPU machines for all your life the development of thread-safe code is probably something you did not had to bother.
Here are a few interesting links on how to do it correctly:
- .NET Framework General Reference: Threading Design Guidelines
- Implementing the Singleton Pattern in C#
- Choosing What To Lock On
- Brad Abrams: volatile and MemoryBarrier()...
- Concurrent Affairs: Build a Richer Thread Synchronization Lock -- MSDN Magazine, March 2006
- .NET Matters: Abortable Thread Pool -- MSDN Magazine, March 2006
- Memory Models: Understand the Impact of Low-Lock Techniques in Multithreaded Apps -- MSDN Magazine, October 2005
- Concurrent Affairs: Performance-Conscious Thread Synchronization -- MSDN Magazine, October 2005
- Concurrency: What Every Dev Must Know About Multithreaded Apps -- MSDN Magazine, August 2005
- Make It Snappy: Juice Up Your App with the Power of Hyper-Threading -- MSDN Magazine, June 2005
- Basic Instincts: Thread Synchronization -- MSDN Magazine, September 2004
- Basic Instincts: Creating and Managing Secondary Threads -- MSDN Magazine, June 2004
- Windows Forms: Give Your .NET-based Application a Fast and Responsive UI with Multiple Threads -- MSDN Magazine, February 2003
- Basic Instincts: Updating the UI from a Secondary Thread -- MSDN Magazine, May 2004
- .NET: Practical Multithreading for Client Apps -- MSDN Magazine, January 2004
Further must-reads? Leave a comment, please!
After years of waiting we finally have our own developer font - specially designed for the needs for developers.
The installation package automatically configures it as default font for Visual Studio 2005:
"Consolas is a monospaced font (like an old typewriter) and good for programmers setting code (its core purpose). "
via Damir's Blog
Addendum: Using Consolas as the Windows Console Font
[Download]