4

Some Well-Known Concurrency Problems

This chapter is about some well-known concurrency problems that have many practical applications. The problems we will look at are as follows:

  • The producer-consumer problem
  • The dining philosophers problem
  • Rate limiting

At the end of this chapter, you will have seen multiple implementations of these problems with some practical considerations on how to approach concurrency issues.

Technical Requirements

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

The producer-consumer problem

In the previous chapter, we implemented a version of the producer-consumer problem using condition variables and mentioned ...

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.