Modern C++ Concurrency: Get the most out of any machine

Advanced

140 Lessons

14h

Certificate of Completion

AI-POWERED

Explanations

AI-POWERED

Explanations

This course includes

107 Playgrounds

This course includes

107 Playgrounds

Course Overview

"Concurrency with Modern C++" is a journey through the present and upcoming concurrency features in C++. - C++11 and C++14 have the basic building blocks for creating concurrent and parallel programs. - With C++17 we have the parallel algorithms from the Standard Template Library (STL). That means that most STL based algorithms can be executed sequentially, parallel, or vectorized. - The concurrency story in C++ goes on. With C++20 we can hope for extended futures, co-routines, transactions, and more. ...Show More

Course Content

1.

Introduction

2.

A Quick Overview

3.

Memory Model: The Contract

4.

Memory Model: Atomics

5.

Memory Model: Synchronization and Ordering Constraints

6.

Memory Model: Fences

5 Lessons

7.

Multithreading: Threads

9 Lessons

8.

Multithreading: Shared Data

12 Lessons

9.

Multithreading: Local Data

1 Lesson

10.

Multithreading: Condition Variables

2 Lessons

11.

Multithreading: Tasks

11 Lessons

12.

Case Study: Calculate Sum of a Vector

15 Lessons

13.

Case Study: Thread-Safe Initialization of a Singleton

9 Lessons

14.

Case Study: Ongoing Optimization with CppMem

9 Lessons

15.

Parallel Algorithms of the Standard Template Library

5 Lessons

16.

The Future: C++20

11 Lessons

17.

Coding Examples

9 Lessons

18.

Best Practices

5 Lessons

19.

The Time Library

7 Lessons

20.

Glossary

2 Lessons

21.

About the Author

1 Lesson

Course Author

Add a deep mastery of C++ to your skillset, and make yourself a more in-demand developer.


Path Cover

Learn C++ for Programmers

Learn C++ from scratch, and get hands-on with one of the most popular programming languages in the world.
Explore Path

7 Modules

Trusted by 1.4 million developers working at companies

Anthony Walker

@_webarchitect_

Emma Bostian 🐞

@EmmaBostian

Evan Dunbar

ML Engineer

Carlos Matias La Borde

Software Developer

Souvik Kundu

Front-end Developer

Vinay Krishnaiah

Software Developer

Eric Downs

Musician/Entrepeneur

Kenan Eyvazov

DevOps Engineer

Anthony Walker

@_webarchitect_

Emma Bostian 🐞

@EmmaBostian

Hands-on Learning Powered by AI

See how Educative uses AI to make your learning more immersive than ever before.

Instant Code Feedback

Evaluate and debug your code with the click of a button. Get real-time feedback on test cases, including time and space complexity of your solutions.

AI-Powered Mock Interviews

Adaptive Learning

Explain with AI

AI Code Mentor