异步编程设计模式 – C/C++
系统编程、C/++、多线程概念、线程同步、操作系统项目课程、事件循环
讲师:Abhishek CSEPracticals
口袋资源独家Udemy付费课程,独家中英文字幕,配套资料齐全!
用不到1/10的价格,即可享受同样的高品质课程,且可以完全拥有,随时随地都可以任意观看和分享。
你将学到什么
- 异步编程的艺术
- 如何以异步方式进行通信
- 编写计算调度程序
- 将多线程应用程序减少为单线程
- 设计和实现异步软件
- 在单线程应用程序中实现并发
- 事件循环设计与实现
- 实现阻塞和非阻塞调用
要求
- 了解线程同步概念 – 互斥体和条件变量(任何线程库,但我们将使用 pthreads)
- C 或 C++ 最好,但如果您最喜欢的语言是任何其他主流语言,那么也可以。借用这些概念并用您喜欢的语言实现它。
- 轻松学习和超越 – 超越 Crowd 正在做的事情 (DS/ALGO/CP)h 基本数据结构,例如链接列表。
描述
2023 年 11 月 30 日 – 本课程正在开发中
欢迎来到异步编程的世界!
异步编程可用于应用程序与其他外部实体交互的任何地方 – 无论是其他线程、其他进程。这个世界本质上是异步的。异步字面上的意思是——任何事情都可能发生——不可预测。如何通过异步编程来编写软件?这就是我们将在本课程中学习的内容。规模合理的大型软件项目是异步的。软件项目在开始与外部实体集成和通信或进入多线程时就离开了同步边界。
异步编程广泛应用于分布式系统、网络协议、分布式数据库等。
本课程的先决条件:
了解线程同步概念 – 互斥体和条件变量(任何线程库,但我们将使用 pthreads)
C 或 C++ 最好,但如果您最喜欢的语言是任何其他主流语言,那么也可以。借用这些概念并用您喜欢的语言实现它。
熟悉基本的数据结构,例如链接列表。
热衷于学习和超越 – 超越 Crowd 正在做的事情 ( DS/ALGO/CP )
本课程的最终产品将是一个迷你库但非常强大的库,它允许您通过异步编程来开发软件。
课程难度等级:
该课程的级别为中级到高级。非常初学者请不要报名参加该课程。
本课程要解决的软件设计问题:
问题 1.模拟单线程程序中的并发
问题2.将多线程程序简化为单线程程序
问题 3.工作延期
问题 4.异步通信
问题 5.排队和处理传入网络数据包
旧目录:
1.什么是同步编程?
2.什么是异步编程?
3.什么时候使用异步编程?
4. 先决条件
5. 开发基于异步编程的项目
6. 添加 CLI 用户输入
7. 添加监听线程
8. 添加定时器
9.添加定期广告
10. 分析项目中的问题
11. 设计事件调度程序(也称为事件循环)( ED )
12. 将事件调度程序集成到项目中
13. 使用 ED 序列化用户 CLI 输入
14. 使用 ED 序列化定时器内部事件
15. 使用 ED 串行化数据包处理
16. 定期广告系列化
17. 使用 ED 进行事件分发
18. 使用 ED 进行渐进式部分处理
19. 分析我们的项目
20. 期货和承诺
21. Promise 管道和组合器
22. 线程池
23. 同步、异步、并发
24. 为昂贵的工作创建工作线程
祝你好运 !快乐学习。
完成本课程后您将了解:
- 同步编程的问题
- 设计和实现异步应用程序/软件
- 哪些类型的应用程序/软件不能是多线程的
- 哪些类型的应用程序/软件必须是异步的
- 永远告别锁定和线程同步。
您在本课程中学到的概念可以移植到您选择的其他编程语言
本课程适合谁:
- 警告:不适合绝对的编程初学者
- 想要将编程技能从初级提升到专业水平的人
- 希望破解有关操作系统、多线程概念的面试问题的最后一年学生