5910 Breckenridge Pkwy Suite B, Tampa, FL. 33610
(800) 272-0707

SkillSoft Explore Course

IT Professional Curricula     Software Development Solution Area     Go     Advanced Programming in Go
Go channels are constructs used by Goroutines to communicate with each other. Go channels, which can be buffered or unbuffered, are similar to pipes in that one Goroutine can send data from one side of the pipe to other Goroutines that receive the data on the other side.
In this course, you'll explore how channels fit in Go's overall concurrency model. You'll learn how to implement non-blocking channel operations in Go programs and about the use of pipelines in Go. Next, you'll examine how to work with Goroutines, as well as buffered and unbuffered channels. You'll explore the range() and close() functions in the context of channels and learn how to combine channels and WaitGroups. Lastly, you'll learn how to implement a pipeline in a Go program.

Objectives

Advanced Programming in Go: Go Channels

  • discover the key concepts covered in this course
  • describe Go channels and how they fit in Go's overall concurrency model
  • create and use a channel for communicating in Goroutines
  • create and work with buffered and unbuffered channels in Goroutines
  • use the range() and close() functions in the context of channels in Go
  • describe how to implement non-blocking channel operations in Go programs
  • use select to process channel operations
  • use a default clause to implement non-blocking channel operations
  • combine channels and WaitGroups with Goroutines
  • describe pipelines and list common pipeline patterns
  • create and implement a pipeline in a Go program
  • summarize the key concepts covered in this course