Learn Multithreading with Modern C++



Note: If you encounter any issues while opening the Download PDF button, please utilize the online read button to access the complete book page.
Size | 36 MB (36,095 KB) |
---|---|
Format | |
Downloaded | 794 times |
Status | Available |
Last checked | 14 Hour ago! |
Author | James Raynard |
“Book Descriptions: Multithreading is used in many areas of computing, including graphics processing, machine learning and Internet stores. An understanding of threads is essential to make full use of the capabilities of modern hardware.C++ now provides direct support for threads, making it possible to write portable multithreaded programs which have well-defined behaviour, without requiring any external libraries.This book thoroughly covers the basics of threading and will prepare you for more advanced work with threads. Source code is available for all the examples. No previous knowledge of threading is required, but you should be comfortable with programming in C++ at an intermediate level.The book begins with the concepts of multithreading, then shows how to launch threads in C++. We look at the problems which can occur with multiple threads and how to avoid them.C++ provides tools which allow us to work at a higher level of abstraction than system threads which share data; we cover condition variables and promises with futures. We also look at asynchronous, lock-free and parallel programming, including atomic variables and the parallel algorithms in C++17. We end by implementing a concurrent queue and thread pool, which brings together the material you have learnt. Read more”