Author: Joe Duffy for MSDN Magazine
Concurrency is everywhere. Server-side programs have long had to deal with a fundamentally concurrent programming model, and as multicore processors become more commonplace, client-side programs will have to as well. Along with the addition of concurrency comes the responsibility for ensuring safety. In other words, programs must continue to achieve the same level of robustness and reliability in the face of large amounts of logical concurrency and ever-changing degrees of physical hardware parallelism.
Correctly engineered concurrent code must live by an extra set of rules when compared to its sequential counterpart. Reads and writes from memory and access to shared resources need to be regulated using synchronization so that conflicts do not arise. Additionally, it often becomes necessary for threads to coordinate to get a certain job done.



1 response so far ↓
1 Building Concurrent Apps From Simple F# Expressions // Sep 22, 2008 at 6:24 am
[...] Links Solving 11 Likely Problems In Your Multithreaded Code Design Considerations For Parallel Programming The Rise Of Functional Programming: F#/Scala/Haskell [...]