Concurrency in Modern C++ [2023 class archive (-)]

This class has been cancelled.

Concurrency in Modern C++ is a three-day online training course with programming examples, taught by Rainer Grimm.

Course Description

This class gives you a detailed insight into the multithreading facilities of C++. Starting with the foundation in C++11, continuing with the parallel STL in C++17, and closing with the concurrency features in C++20. Additionally, we will have a more in-depth look into the C++ memory model, consisting of the atomics and the various memory orders in C++. This insight will provide you with a better understanding of the general concurrency features of C++.

Prerequisites

Participants should have a basic knowledge of the C++ language and the fundamentals of multithreading.

In the class, I will give you a concise introduction to the topic. This introduction provides the starting point for the exercises; therefore, you should bring your laptop with you including a C++17 compiler.

You will get in return the training material consisting of the presentation, the exercises, and the solutions to the exercises. Additionally, each participant gets a coupon for my LeanPub book “Concurrency with Modern C++”.

Course Topics

  • Multithreading
    • Threads
    • Shared Data
    • Mutexes and Locks
    • Thread-safe Initialization
    • Thread-Local Data
    • Condition Variables
    • Tasks (Promises and Futures)
  • Parallel Algorithms of the Standard Template Library (C++17)
    • Execution Policies
    • Algorithms
      • The New Algorithms
  • C++20
    • std::jthread
    • Atomic Smart Pointers
    • Latches and Barriers
    • Semaphores

Register Here

Course Instructor

Rainer GrimmRainer Grimm has worked as a software architect, team lead and instructor for about 20 years. In his spare time he likes to write articles about C++, Python, and Haskell, but he also likes to speak at conferences.

He publishes very often on his blog “Modern C ++“. Now he is a trainer giving seminars on Modern C++ and Python.

His books “C++ Core Guidelines Explained: Best Practices for Modern C++“, “C++20: Get the Details“, “C ++ 11 für Programmierer“, “C ++“, “C ++ – Standardbiliothek” , “The C++ Standard Library” and “Concurrency with Modern C++” were published by O’Reilly and Leanpub.