Training, Coaching, and Technology Consulting

PrintEmail

Concurrency with Modern C++

Code:
19
Location:
Online seminar / face-to-face seminar

Description

Duration

  • 4 * 1/2 day or 2 * 1 day

Accompanying literature

  • Each participant gets one of my digital or printed books.

Method

  • Theory and praxis with many exercises. You get the source code and the solutions to the exercises.
  • You need a computer with at least a C++11 compiler.

Objectives

  • Learn the safe usage of multihreading in C++
  • Get a basic knowledge of the memory model
  • Peek into the future with C++20/23

Standard

      • C++11/14/17 standard

Content

Multithreading

  • Threads
  • Shared Data
  • Mutexes and Locks
  • Thread-safe Initialisation
  • Thread-Local Data
  • Condition Variables
  • Tasks (Promises and Futures)

The Memory Model

  • The Contract
  • Atomics
  • The Synchronisation and Ordering Constraints
  • Sequential Consistency
  • Acquire-Release Semantic
  • std::memory_order_consume
  • Relaxed Semantic

Parallel Algorithms of the Standard Template Library (C++17)

  • Execution Policies
  • Algorithms
    • The New Algorithms

The Near Future: C++20

  • std::jthread
  • Atomic Smart Pointers
  • Latches and Barriers
  • Coroutines
  • Semaphores

The Future: C++23

  • Executors
  • Extended Futures
  • Transactional Memory
  • Task Blocks

Conditions of participation:

The general terms and conditions are found in the GT&C.


Subscribe to our list!

There are no scheduled dates for this course.
If you are interested in this course, you can subscribe to our list. You will be notified as soon as the course is scheduled.

Attendee Information

Contact details

* required

Category

Go to top