Mastering Multithreading Programming with Go (Golang)
掌握Go(Golang)语言的多线程编程
Learn about Multithreading, Concurrency & Parallel programming with practical and fun examples in Google’s Go Lang
了解并学习多线程、并发与并行编程,通过Google的Go语言实践和有趣的示例来掌握这些概念。
教程演示🔗
学生数量:4,922 个学生
上次更新时间:2022年7月
教程评分:4.7
教程语言:英语
教程字幕:中文、英语字幕
本课程包括:结业证书、2 篇文章、完整的永久访问权、5.5 小时 长的随选视频、在移动设备和电视上观看字幕
学习内容
1、了解如何创建响应式和高性能的软件。
2、了解如何使用多线程来模拟特定类型的问题和仿真。
3、使用Golang开发高度并发和并行的程序。
4、理解并掌握并行计算的优势、局限性和特性。
5、通过更高级、多线程的主题提升你的Go语言编程技能。
6、了解goroutine、互斥锁、读写锁、等待组、通道、条件变量等知识。
要求
1、更多关于并行计算的内容
2、本课程的链接和资源:
3、一些Go语言编程经验(如果你了解如何使用函数、循环、数组和一点指针知识,那就足够了)。
4、最近安装的Go版本。
5、能够一边做50个俯卧撑,一边在每个动作中喊出一个独特的质数(开玩笑的)。
课程介绍
在一间国际投资银行12楼的会议室中,气氛阴郁至极。公司开发团队聚在一起讨论,关键核心应用崩溃导致系统全面瘫痪后的前进方案。
“伙计们,我们遇到大问题了。我发现故障是由代码中的竞态条件引起的,这个错误是不久前引入的,昨晚触发了这个问题。”高级开发者马克·亚当斯说道。
房间内陷入沉默。窗外的车辆在繁忙的城市交通中缓慢无声地移动。资深开发者立即意识到事态严重,他们将通宵工作以修复问题和整理数据存储中的混乱。经验较少的开发者明白竞态条件很严重,但不清楚具体原因,因此保持沉默。
最终,交付经理布莱恩·霍尔姆斯打破沉默:”应用程序运行了几个月都没问题,最近也没发布过新代码,怎么会突然出故障?!”
众人摇头,回到自己的办公桌前,留下布莱恩独自困惑。他拿出手机,搜索”竞态条件”。
这场景似曾相识吧?有多少次你听到其他开发者谈论使用线程和并发编程来解决特定问题,但出于恐惧,你选择避开讨论?
资深开发者不会分享的小秘密……多线程编程并不比普通编程困难多少。开发者害怕并发编程,因为他们认为这是只有高度经验丰富的开发者才能涉足的高级话题。
然而,事实并非如此。我们的大脑已经习惯了处理并发。实际上,我们在日常生活中无意识地做到这一点,但在编码时却感到困难。其中一个原因是,我们不熟悉管理这种并发所需的概念和工具。本课程旨在帮助你理解如何使用多线程工具和概念来管理并行编程。它尽可能地注重实践。我们首先介绍并行性的理论,然后解释操作系统如何处理多个进程和线程。接下来,我们将通过解决多线程示例问题,讲解可用的各种工具。
在这门课程中,我们将使用谷歌的Go编程语言及其goroutine,但这里学到的概念可以应用于大多数编程语言。
本课程的所有代码可在GitHub上找到,用户名/项目:cutajarj/multithreadingingo。
“在国际投资银行的高层决策会议中,团队面临核心应用竞态条件引发的崩溃难题。高级开发者马克揭示了隐藏的挑战,新手开发者将探索多线程编程的神秘面纱。这门实战课程教你如何利用Go语言的goroutine,理解并发管理,破解并发编程恐惧,链接:[你的GitHub项目链接](https://github.com/cutajarj/multithreadingingo)。”。