Book Image

Concurrency with Modern C++

By : Rainer Grimm
Book Image

Concurrency with Modern C++

By: Rainer Grimm

Overview of this book

C++11 is the first C++ standard that deals with concurrency. The story goes on with C++17 and will continue with C++20/23. Concurrency with Modern C++ is a practical guide that gets you to grips with concurrent programming in Modern C++. Starting with the C++ memory model and using many ready-to-run code examples, the book covers everything you need to improve your C++ multithreading skills. You'll gain insight into different design patterns. You'll also uncover the general consideration you have to keep in mind while designing a concurrent data structure. The final chapter in the book talks extensively about the common pitfalls of concurrent programming and ways to overcome these hurdles. By the end of the book, you'll have the skills to build your own concurrent programs and enhance your knowledge base.
Table of Contents (19 chapters)
Free Chapter
1
Reader Testimonials
19
Index

Invaluable Value

Patterns added an invaluable value to software development in general. Of course, this also holds true for concurrency in particular. The added value boils down to three points. A well-defined terminology, improved documentation, and learning from the best.

The well-defined terminology means that software developers can now use common and unambiguous vocabulary. Misunderstandings or verbose explanations are mainly stories of the past. If a software developer asks for an advice about how a family of similar algorithms can be implemented in such a way that they can be exchanged during runtime the answer may be as short as: use the strategy pattern. If the software developer knows the strategy pattern, he can immediately think about the consequences of using the strategy pattern; if not, he can look it up in the literature.

The documentation improves in two aspects. First, the documentation about the software system, may it be in a graphical or textual description, improves...