One of the goals of the new C++ Standard was to provide support for concurrency, in particular for thread-based concurrency. But threads don’t scale very well. Do C++ tasks, which are created using std::async, offer a scalable solution? Can they implement task-based parallelism?
Bartosz Milewski has a Ph.D. in Quantum Physics and many years of experience as a C++ programmer. He worked at Microsoft on the Context Index--a search engine before the Internet-- still an active part of Windows 7. He designed the first distributed version control system, Code Co-op (before BitKeeper and git). Bartosz took part in the design of the D language. His main topics of interest are concurrent and distributed computing. He works at Corensic, a Seattle startup that makes a concurrency bug detector, Jinx. He regularly publishes a blog at BartoszMilewski.wordpress.com and a series of C++11 Concurrency tutorials at corensic.com/Learn/Resources/ConcurrencyTutorialPartOne.aspx .