Igor Ostrovsky wrote a few very nice MSDN magazine articles. Not all of them have ended up in the list at MSDN magazine, so here is a more complete list:
- C# – The C# Memory Model in Theory and Practice, Part 2 (January 2013).
- C# – The C# Memory Model in Theory and Practice (December 2012, was missing in the MSDN magazine article list).
- Async Tasks – Simplify Asynchronous Programming with Tasks (September 2010).
- Concurrent Affairs: Data-Parallel Patterns and PLINQ (December 2009).
- .NET Matters: False Sharing (October 2008).
Though the articles show the majority of sample code in C#, the actual topics are of great interest to any developer writing .NET code or interfacing to it.
Some keywords in his articles:
- PLINQ
- volatile and read/write reordering
- memory access patterns
- threading, locking
- System.Threading and System.Collections.Concurrent namespaces
- ThreadPool
- InvokeAsync, RunWorkerAsync, SendAsync, DownloadStringAsync
- IAsyncResult
- System.Threading.Task.Tasks and task composition and parallel execution
- SynchronizationContext
- False sharing (when 2 unrelated objects share the same processor cache line)
- Sequence Zipping
- JIT Compiler optimizations and influence on memory operationsC++
–jeroen
via: MSDN Magazine Authors: Igor Ostrovsky.
Filed under: .NET, .NET 1.x, .NET 2.0, .NET 3.0, .NET 3.5, .NET 4.0, .NET 4.5, .NET CF, C, C#, C# 1.0, C# 2.0, C# 3.0, C# 4.0, C# 5.0, C++, Delphi, Development, F#, LINQ, PLINQ, Prism, Software Development, VB.NET, VB.NET 10.0, VB.NET 11.0, VB.NET 7.0, VB.NET 7.1, VB.NET 8.0, VB.NET 9.0
