现代 C++ 并发深度剖析 ( C++17/20)
现代 C++ 并发功能包括内存模型、无锁数据结构、线程池、协程。
讲师:Kasun Liyanage
口袋资源独家Udemy付费课程,独家中英文字幕,配套资料齐全!
用不到1/10的价格,即可享受同样的高品质课程,且可以完全拥有,随时随地都可以任意观看和分享。
你将学到什么
- 学习 C++ 并发编程,包括 C++17/20 标准中的功能。
- 您将学习如何使用最新的 C++ 功能来实现有用的并发数据结构和算法。
要求
- 有c++编程基础,了解一些数据结构和算法知识会很有帮助
描述
C++ 编程语言可以分为许多主题。有人说它是一种通用编程语言,有人说它是 C 的面向对象版本。但我喜欢将它归类为系统编程语言。包括 C++ 在内的任何系统编程语言的一个特点是,与 java 等其他语言相比,该语言应该能够更快地执行。
随着 C++11 标准的引入,C++ 范式发生了急剧转变。与之前版本最显着的区别是引入了新的内存模型。内存模型是任何语言的关键部分,所有功能的性能都取决于该语言的内存模型。借助新的 C++ 内存模型,我们可以利用现代多核处理器的强大功能。
编写具有更好内存回收机制的正确 C++ 代码是一项艰巨的任务。但是,如果我们想要编写线程安全的代码来获取底层处理器的真正威力,则是一项艰巨的任务。在本课程中,我们将深入讨论 C++ 并发特性,包括内存模型。我们将实现线程安全的数据结构和算法,包括基于锁的方式和无锁的方式。数据结构和算法的正确无锁实现将提供前所未有的性能输出。让我在下面列出本课程中涵盖的关键方面。
1.C++并发基础知识(线程、互斥、package_task、future、async、promise)
2.基于锁的数据结构和算法的线程安全实现。
3.C++内存模型。
4.数据结构和算法的无锁实现。
5.C++20并发特性。
5. 无锁数据结构的适当内存回收机制。
6.并发代码的设计方面。
7.深入讨论线程池。
8. 关于使用 C 和 C++ 进行 CUDA 编程的奖励部分。
本课程适合谁:
- 任何想要扩展 C++ 编程技能的人。