Learn Multithreading in C++ (Udemy.com)
Modern C++ multithreading: threads, async, tasks, locks, futures, promises, conditions and more.
Created by: John Purcell
Last updated August 2020
What you will learn
- How to use multithreading in C++ 17 onwards.
How it compares
Against the other 518 rated Udemy courses in Software Development on CourseDuck:
- Rating4.3 out of 5higher than 17% of them
- Reviews1,806#90 of 519 by number of reviews
- Length3.4 hoursshorter than 75% of them
- Last updatedAugust 2020earlier than 88% of them
Course Description
An introduction to multithreading, and to the powerful multithreading features added to C++ in 2011, 2014 and 2017.
Take your C++ to the next level!
Among other things, you'll learn the following in this course:
How to create threads using the thread class or async
How to work with promises, futures and tasks
How to use mutexes and locks to coordinate multiple threads
How to use conditions to signal between threads
How to create blocking queues and thread pools
In this course I'll break complex multithreading concepts down into simple steps, demonstrating practically, in front of your eyes, how you can make use of multiple threads to accomplish tasks that would be difficult or horribly slow without multithreading.
Instructor Details
- 4.3 Rating
1,806 Reviews
John Purcell
After working as a software developer and contractor for over 14 years for a whole bunch of companies including CSC, Proquest, SPSS and AT&T in the UK and Netherlands, I decided to work full-time as a private software trainer. After spending four years in the beautiful city of Budapest, Hungary and a year in Berlin, I now live in Italy.
More courses by John Purcell
Java Tutorial for Complete Beginners (2026)
4.3 (103,168 Reviews)
Provider: Udemy
Time: 16.2h
$19.99
MySQL, SQL and Stored Procedures from Beginner to Advanced (2016)
4.5 (4,770 Reviews)
Provider: Udemy
Time: 18.3h
$99.99
More Software Development courses
MATLAB Programming Simulink: Beginner to Pro with ChatGPT (2026)
5.0 (930 Reviews)
Provider: Udemy
Time: 9.6h
$10.99
Build Web Apps with Nuxt.js 3: Master TypeScript & API [New] (2026)
4.9 (635 Reviews)
Provider: Udemy
Time: 6.7h
$19.99
Terraform 101: The Ultimate Hands-On Guide [Azure Edition] (2025)
4.8 (1,975 Reviews)
Provider: Udemy
Time: 11.9h
$94.99
Reviews
By Peter Richardson on 9/19/2025
I have really enjoyed the course so far. My opinion is that this is really an introduction to threads. Many of the techniques are introduced with simple but informative code sections. I have followed along with the code, and added other elements to gain a better understanding. I think that is what you need to do other than just watch the videos. I am really enjoying the course and will apply what I have learned to my curr3nt project.
By Joerg Striebel on 4/20/2025
I think it's a good starting point for getting into multi-threading in C++, but bear in mind that this is an introductory course. The lecturer has a clear voice and walks you through the content at a gentle pace. What this course lacks, however, is an exercise after each topic with an example of how you could implement the solution. Nevertheless, I think the course is worth taking despite lacking exercises.
By Masoud Farsi on 3/25/2024
the computer has a double mouse cursor that cause headaches and dizziness. some of the STL keywords were not explained deeply and using namespace std; at this level with choosing variable's name the same as STL keywords and function's name caused it difficult to read and learn the codes. Overall a good introduction though.
By Vishal Kumar Singh on 5/20/2023
Well I find the course really very good and well presented, but there are many topics such as coroutines, Jthread are missing. If instructor could add those topics then this course will become a complete package on threading topic. I am giving rating of 3.5 , reason : Thread pool topic is not complete. I mean in demonstration instructor started pool of thread , but those (worker) thread has to do some operation, that is not demonstrated
By Bernardo Cohen on 8/16/2022
Excellent course, this one and the other c++ courses from John give a really solid knowledge. I could consolidate a lot of things I already knew but I also learned loads of new things and I have fun doing the projects and coding along every video. Thanks a lot John you are a great teacher!
By Michael Roach on 3/13/2022
An excellent intro to multithreading. A basic understanding of C++ should be enough to understand this course. Instructor is easy to understand and good at keeping things short and simple. Very simple and clear examples. The course is nice and short and really lets you unlock the power of your CPU.
By Bill Jones on 2/21/2022
I enjoyed the content and wish the external factors were actually external like a few file transfers or something to really hit home how much you gain from threading. I had some understanding of threads but not quite in depth. This course filled in the blanks for me and I enjoyed the build up for the examples. I would recommend the course if you want to learn about multithreading in C++.
By Anonymized User on 1/31/2021
This is exactly what I expected from this course. Crisp and to the point. Only improvement might be to relate the topics how they can be used in real world problem, yes it was explained but may be if it more near to real world problem, Overall satisfied with this course. thanks :)
By Christian Yoedhana on 1/12/2021
Overall this course has a good return of investment for me. The course syllabus groups together enough key lessons that allows me to understand online documentations and videos about C++ threading and concurrency. The lectures also build up nicely from the previous lecture. C++11 familiarity seems like hard prerequisite. Having an introductory knowledge about multitasking/concurrency concepts also helps to understand the code samples in the lectures. Very fast response time to answer my questions. Perhaps the time spent for live coding presentation can be reduced using bigger code snippets. Then the saved typing delay time can be used to add more materials, like an introduction to timed mutex. Please add exercise materials.
By Sam Verghese on 1/5/2021
The topics covered could be more practical problem-related. I was able to follow the course but I couldn't understand why I am doing this course or where I could use all these concepts or how it can be ported for different applications. The course could also include assignments so that we can try doing those and truly understand the application of the concepts introduced in the course.
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 86 / 100









![Build Web Apps with Nuxt.js 3: Master TypeScript & API [New]](/programming/software-development/images/6457785_5adc_4.jpg?v=1789443959)

![Terraform 101: The Ultimate Hands-On Guide [Azure Edition]](/programming/software-development/images/6208847_f60a_7.jpg?v=1791193600)
