Chapter 8: Concurrency in C++
The purpose of this chapter is to describe the features for concurrent programming that were added to the language recently: in the C++17 and C++20 standards. While it is too early to talk about the best practices in using these features for optimum performance, we can describe what they do, as well as the current state of the compiler support.
In this chapter, we're going to cover the following main topics:
- Introduction of concurrency into the C++ language in C++11
- Parallel STL algorithms in C++17
- Coroutines in C++20
After reading this chapter, you will know the features that C++ offers to help write concurrent programs. The chapter is not meant to be a comprehensive manual for C++ concurrency features. Rather, it's an overview of the available language facilities, a starting point from which you can further explore the subjects that interest you.