简介

已完成

你可能已对 Go 在并发方面的出色表现有所耳闻。 也许正是这一最突出的功能使 Go 如此受欢迎,让它成为了编写 Docker、Kubernetes 和 Terraform 等其他软件的理想之选。

在开始了解 Go 中并发的工作原理之前,你可能需要忘记从其他编程语言中已经了解的知识。 Go 使用的方法不同。

学习本模块时,你已具备了学习更高级主题(如并发)所需的知识。 尽管如此,我们还是要先说明为什么需要并发。 我们将逐一介绍不同的主题。

建议你练习所有的代码示例,直到你完全理解这些概念之后再继续。 正如你在前面的模块中所经历的那样,实践能帮助你更好地理解概念。

让我们先来看看你将在本模块中学习的内容。

学习目标

在本模块中,你将学习以下内容:

  • Go 中并发的工作原理。
  • 并发与并行之间的差异。
  • 如何在并发程序中使用 channel(通道)进行通信。
  • 如何通过实现并发来编写运行速度更快的程序。
  • 当你想要启动有限数量的并发调用时,如何编写可以使用缓冲区来利用并发的动态程序。

先决条件

  • 准备好创建应用程序的 Go 环境。 理想情况下,你应当已经在本地安装并配置了 Go,并且应当已经安装了包含 Go 扩展Visual Studio Code
  • 能够创建和修改 .go 文件。
  • 能够使用终端提示符运行 Go 应用程序。
  • 了解基本数据类型,例如 stringintboolean
  • 了解如何编写基本数据控制流,例如 iffor 语句。
  • 了解如何编写函数。
  • 了解如何使用库,例如 net/http