Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

University of California, Irvine

Concurrency in Go

University of California, Irvine via Coursera

Overview

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.

Syllabus

  • MODULE 1: Why Use Concurrency?
    • 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.
  • MODULE 2: CONCURRENCY BASICS
    • This module looks at basic concurrency concepts and race conditions in preparation for a discussion of threads coming up in the next module.
  • MODULE 3: THREADS IN GO
    • 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.
  • MODULE 4: SYNCHRONIZED COMMUNICATION
    • 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.

Taught by

Ian Harris

Reviews

3.0 rating, based on 1 Class Central review

4.6 rating at Coursera based on 738 ratings

Start your review of Concurrency in Go

  • Profile image for D4r9k
    D4r9k
    The course is for intermediate student with already programming knowledge. If you don't care the certificate just follow and practice this guide https://tour.golang.org . Low response in the forums. Weird assignments sometimes with not clear instructions.

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.