Go 语言在被设计的时候,Java 和 C++ 是编写服务器程序最常用的语言(至少在 Google 是这样),这是因为使用这些语言可以高效的开发。但是 Go 设计者们觉得像 Java 和 C++ 这些语言需要开发者记忆太多的语法和规则,并且需要重复做的事情太多,这导致一些程序员开始转向更加动态、流畅的语言,如 Python。但是付出的是损失开发效率和对类型安全检查的缺失。Go 设计者们认为应该可以发明一种语言,这种语言集高效的开发、提供类型安全检查、简洁流畅的代码风格与一体,于是 Go 就诞生了。
Go 在语言层面提供了内置的并发支持,其的应用范围越来越广,大名鼎鼎的容器化技术 Docker 以及号称分布式操作系统的 K8S 底层实现就是 Golang 来实现的,随着技术的快速发展,我们只有不断迭代自己的技术栈,才能不会被淘汰,而 Golang 将会是未来应用场景比较多的一种语言,各大公司也将会要求必须掌握 Golang 来进行快速开发高并发应用程序。
前面我们讲解了《Go 并发编程低级同步原语锁》 ,本课程作为 Go 并发编程的高级篇下篇,讲解 Go 中的高级并发编程原语通道相关,内容如下:
- Go 中 Channel 的概念,种类,关闭操作等
- Go 中 Channel 结合 timer 包实现超时等待
- Go 中 Channel 的 happen-before 语义
- Go 中 context 包以及如何与 Channel 配套使用
阅读全文: http://gitbook.cn/gitchat/activity/5d2940c91c63305ba2e8c097
您还可以下载 CSDN 旗下精品原创内容社区 GitChat App ,阅读更多 GitChat 专享技术内容哦。