|
所在平台: Coursera |
课程主页: https://www.coursera.org/learn/golang-concurrency
课程评论:没有评论
课程名称:Go 语言中的并发编程 课程概述:本课程旨在教授如何在 Go 语言中实现并发编程。学生将探索通道和 goroutine 在实现并发中的作用。课程涵盖编写 goroutine 和实现 goroutine 之间通信的通道等主题。此外,课程活动将通过开发多个示例程序,让学生充分发挥 Go 的并发编程能力。 课程大纲: 模块 1:为何使用并发? 描述:本模块介绍了 Go 中并发的概念。通过回顾未来微处理器性能提升可能受到的物理因素限制,为课程奠定基础。 模块 2:并发基础 描述:本模块探讨基本的并发概念和竞争条件,为接下来的线程讨论做好准备。 模块 3:Go 中的线程 描述:在这一模块中,学生将学习如何使用线程化的 goroutine,并探索同步带来的好处。本周的作业要求学生采用线程化的方法,创建一个通过四个独立子数组对整数进行排序的程序,并将这些数组合并成一个数组。 模块 4:同步通信 描述:最后一个模块将本课程中涵盖的线程、并发和同步等特性整合在一起。本周的编程作业要求学生在实现“哲学家就餐问题”时使用并发算法,并解决随之而来的同步问题。
Name:MODULE 1: Why Use Concurrency?
Description:This course introduces the concept of concurrency in Go. The first module sets the stage by reviewing the physical factors that can restrict microprocessor performance increases in the future.
Name:MODULE 2: CONCURRENCY BASICS
Description:This module looks at basic concurrency concepts and race conditions in preparation for a discussion of threads coming up in the next module.
Name:MODULE 3: THREADS IN GO
Description:In this module, you’ll work with threaded goroutines and explore the benefits of synchronization. The week’s assignment has you using a threaded approach to create a program that sorts integers via four separate sub-arrays, then merging the arrays into a single array.
Name:MODULE 4: SYNCHRONIZED COMMUNICATION
Description:This last module ties together the various features – including threads, concurrency, and synchronization – covered in this course. The week’s programming assignment requires you to use concurrent algorithms in the implementation of the “dining philosopher’s problem and then address the ensuing synchronization issues.
Learn how to implement concurrent programming in Go. Explore the roles of channels and goroutines in implementing concurrency. Topics include writing goroutines and implementing channels for communications between goroutines. Course activities will allow you to exercise Go’s capabilities for concurrent programming by developing several example programs.