Advanced Programming in Go: Goroutines

Go 1.16    |    Intermediate
  • 15 Videos | 1h 27m 10s
  • Includes Assessment
  • Earns a Badge
Goroutines are foundational components of Go's concurrency model. Goroutines may be considered units of execution in a Go program. Goroutines are very lightweight with small stack sizes. Consequently, millions of Goroutines may be spawned at about the same time on modest hardware. In this course, you'll explore Goroutines and how they implement the packages sync and sync/atomic. You'll investigate race conditions in Goroutines and explore race conditions versus data races. Next, you'll create and work with WaitGroups, implement atomic operations and see how mutexes are used with Goroutines. Lastly, you'll create and explore how to detect and avoid race conditions in Goroutines.

WHAT YOU WILL LEARN

  • discover the key concepts covered in this course
    describe Goroutines and how they fit in Go's concurrency model
    create and execute a simple Goroutine
    work with Goroutines and closures
    work with anonymous Goroutines
    describe how the packages sync and sync/atomic are used in concurrent programming
    create and use WaitGroups in Goroutines
    define and execute atomic operations in Go
  • create and use Mutexes in Go programs
    describe race conditions and how they affect Go programs
    simulate a race condition in a Go program and study its affects
    compare and contrast race conditions versus data race conditions
    utilize programming methods to avoid race conditions
    utilize programming tools in Go that help detect race conditions
    summarize the key concepts covered in this course

IN THIS COURSE

EARN A DIGITAL BADGE WHEN YOU COMPLETE THIS COURSE

Skillsoft is providing you the opportunity to earn a digital badge upon successful completion of this course, which can be shared on any social network or business platform

Digital badges are yours to keep, forever.

YOU MIGHT ALSO LIKE