Trainings Details
Multi-threading is a key approach to scale programs. However, dealing with multiple threads is also a source of trouble. Running code in parallel is great as long as this code doesn't need concurrent access to the same objects and synchronization. With concurrency, care must be taken to ensure that multiple threads is not counter productive. As usual, C++ brings additional challenges.
In this workshop we will experience the basics of multi-threading and concurrency. By changing a pretty simple sequential program to do things in parallel, you will see the issues and pain that can occur and how to deal with them. You will learn how to start threads in C++, how to deal with exceptions, how to synchronize code (using mutexes and atomics), and how to deal with synchronization (using condition variables). This all is discussed using live coding falling intro traps and solve issues step by step. This way, you will understand how to use C++ for multi-threading and concurrency way better.
Trainings Agenda
- live coding