2

Go Concurrency Primitives

This chapter is about the fundamental concurrency facilities of the Go language. We will first talk about goroutines and channels, the two concurrency building blocks that are defined by the language. Then, we also look at some of the concurrency utilities that are included in the standard library. We will cover the following topics:

  • Goroutines
  • Channels and the select statement
  • Mutexes
  • Wait groups
  • Condition variables

By the end of this chapter, you will have enough under your belt to tackle basic concurrency problems using language features and standard library objects.

Technical Requirements

The source code for this particular chapter is available on GitHub at https://github.com/PacktPublishing/Effective-Concurrency-in-Go/tree/main/chapter2 ...

Get Effective Concurrency in Go now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.