•Nonconcurrent apps aren’t going to get faster (expect some regressions). We need killer apps with lots of latent parallelism.
•The state of concurrency in the industry is terrible. Nobody does concurrency well for mainstream languages and platforms.
The
world’s best frameworks are just getting away with it.
•A generational advance >OO is necessary to get above the “thread + lock” concurrency programming model.
Key Ongoing Themes
•unmanaged × managed; standards; concurrency
A Convergence of Fundamental Building Blocks
•for each (C++/CLI, C++0x, …)
automatic
type inference (C++0x, Concur, Linq)
lambda
functions (C++0x?, Concur, Linq)
concepts
(C++0x, Concur)
Concurrency In C++: A Snapshot of Thinking
•Concur basics: active objects; messages; futures
•loop/data parallel: parallel loops; parallel STL
algorithms
Summary
Overview