2 Dealing with threads

This chapter covers

  • Modeling concurrency in operating systems
  • Differentiating between processes and threads
  • Creating goroutines
  • Differentiating between concurrency and parallelism

The operating system is the gatekeeper of our system resources. It decides when and which processes are given access to the various system resources, including processing time, memory, and network. As developers, we don’t necessarily need to be experts on the inner workings of the operating system. However, we need to have a good understanding of how it operates and the tools it provides to make our lives as programmers easier.

We’ll start this chapter by looking at how the operating system manages and allocates resources to run multiple jobs ...

Get Learn Concurrent Programming with 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.