Title
Modern C++ Concurrency in Depth ( C++17/20)
modern c++ concurrency features including memory model, lock free data structure, thread pools, coroutines.

What you will learn
Learn Concurrent programming in C++ including feature in C++17/20 standards.
You will learn how to implement useful concurrent data structures and algorithms using latest C++ features.
Why take this course?
π§ Master Modern C++ Concurrency: Unleash the Power of C++17/20!
π Course Headline: Dive Deep into Modern C++ Concurrency Features, including the Memory Model, Lock-Free Data Structures, Thread Pools, and Coroutines!
π Course Instructor: Kasun Liyanage - A seasoned expert in C++ concurrency, dedicated to demystifying the intricacies of modern C++.
Unlock the Full Potential of Your C++ Programs!
C++ is more than just a language; it's a tool for system programming that demands performance and efficiency. With the advent of C++11, C++ took a transformative leap, redefining what we think we know about the language. The new memory model introduced in C++11 opened the doors to leveraging the full capabilities of modern multi-core processors, setting the stage for unprecedented performance improvements.
In this comprehensive course, Modern C++ Concurrency in Depth (C++17/20), you'll explore the intricate world of C++ concurrency, where understanding the memory model is not just beneficial but essential for writing high-performance, multi-threaded applications.
Key Features of This Course:
𧡠Basics of C++ Concurrency:
- Master the fundamental concepts such as threads, mutexes,
package_task
,future
,async
, andpromise
.
π Lock-Based Thread Safety:
- Implement robust and thread-safe data structures and algorithms using locks.
π« C++ Memory Model:
- Gain a deep understanding of the C++ memory model and its critical role in performance optimization.
πββοΈ Lock-Free Programming:
- Discover how to implement lock-free data structures and algorithms for optimal performance and concurrency.
β‘ C++20 Concurrency Features:
- Explore the latest advancements in C++ concurrency, including features from C++20.
π Memory Reclaim Mechanism:
- Learn proper memory management strategies for lock-free data structures to ensure safety and efficiency.
π€ΉββοΈ Designing Concurrent Code:
- Understand the design aspects of concurrent code that are crucial for maintaining performance and avoiding common pitfalls.
π Thread Pools:
- Dive into an in-depth discussion on thread pools and how they can simplify your concurrency model.
π Bonus: CUDA Programming with C/C++:
- Get an introduction to parallel programming with NVIDIA's CUDA platform, enhancing your ability to write high-performance code for both C and C++.
Why Take This Course?
β Practical Skills: Learn by doing with practical examples and hands-on projects.
β Expert-Led Learning: Benefit from Kasun Liyanage's years of experience and deep understanding of C++ concurrency.
β Cutting-Edge Content: Stay ahead of the curve with up-to-date information on the latest C++ standards and features.
β Community Support: Join a community of like-minded learners to share knowledge, ask questions, and collaborate.
π Enroll today and transform your C++ concurrency skills from beginner to expert with Modern C++ Concurrency in Depth (C++17/20)! π
Screenshots




Our review
π Global Course Rating: 4.27
Course Overview and Content Quality
Pros:
- π Comprehensive Topics Coverage: The course covers a wide range of concurrency topics, from basic to advanced levels, making it a valuable resource for both novice and experienced programmers.
- π€ Advanced Content: Some users found the content to be very advanced and detailed, especially in areas like atomic operations and lock-free programming.
- π C++17 and C++20 Updates: The course is updated to cover C++17 and C++20 features, which are important for modern C++ concurrency programming.
- π Alignment with Existing Literature: Some users appreciated the alignment of the course content with the book "Concurrency in Action" by Anthony Williams, even if it was not always clearly mentioned.
- π Explained Well: A number of reviews praised the clear explanations provided by the instructors, especially for complex concepts.
- π Valuable Depth of Information: The depth of information provided in some lectures was noted as particularly impressive, offering insights into how things work under the hood.
Cons:
- π« Lack of Beginner-Friendly Approach: The course seems to be more geared towards those with prior knowledge of concurrency and multiprocessing.
- π§ Confusing Content Rush: Some users found the content from section 4 onwards to be rushed, with topics not being discussed in depth.
- βοΈ Outdated Slides and Code Examples: Some slides were outdated, and some code examples provided in later sections did not correspond to the lectures they were supposed to support (e.g., sections 6 and 9). Additionally, codes for certain lectures (e.g., lectures 85 and 86) were reported as non-working.
- π£οΈ Speech Clarity and English Grammar Issues: Some users noted that speech clarity and English grammar in the course needed improvement. This affected the understanding of the material, with some instructors being more clear than others.
- π Missing Assignments: The absence of assignments or tasks to help understand the topics was pointed out as a significant gap in the course's comprehensive approach.
- π οΈ Technical Errors and Oversights: There were reports of technical errors, such as missing code snippets and incorrect information within slides.
Instructor Performance and Course Structure
- π§βπ« Different Presenters: The course appears to have content delivered by different presenters, with some users preferring the main instructor over others.
- β« Audio and Presentation Quality: Some users suggested that the material could be made more professional in terms of audio quality and presentation to match the complexity and importance of the subject matter.
Course Material and Supporting Resources
- π Missing Materials: Several reviews highlighted issues with missing materials, such as slides and code snippets, which required transcribing from video to understand certain concepts.
- π₯οΈ Video and Slide Discrepancies: In some instances, the content presented in videos contradicted what was shown on slides, which was found to be very distracting.
User Experience and Learning Outcome
- β¨ Learning Value: Despite the issues with presentation and content consistency, users reported gaining valuable knowledge about concurrency in C++ that improved their programming skills.
- π Room for Improvement: Users provided constructive feedback, suggesting improvements such as better English grammar, more comprehensive coverage of topics, and the inclusion of assignments or tasks to aid learning.
Conclusion
The course is highly praised for its extensive coverage of concurrency topics in C++ but falls short in delivering a seamless and error-free learning experience due to presentation issues, inconsistencies in material quality, and some technical oversights. It is recommended for those with a background in concurrency who wish to update their skills to C++17/C++20 standards, but it may require additional effort to navigate the course content effectively. A potential rework of the course with attention to detail, clarity, and thoroughness could significantly enhance its value as a learning tool.
Charts
Price

Rating

Enrollment distribution
