Skip to content

Concurrency books — Go

All book lists · Concepts

Learn Concurrent Programming with Go

James Cutajar · 1st edition · Manning Publications · 2024
dedicated to concurrency · on the shelf · publisher ↗ · example code ↗

Chapters
  • 1 Stepping into concurrent programming
  • 2 Dealing with threads
  • 3 Thread communication using memory sharing
  • 4 Synchronization with mutexes
  • 5 Condition variables and semaphores
  • 6 Synchronizing with waitgroups and barriers
  • 7 Communication using message passing
  • 8 Selecting channels
  • 9 Programming with channels
  • 10 Concurrency patterns
  • 11 Avoiding deadlocks
  • 12 Atomics, spin locks, and futexes

Cited on: Atomic variable, Barrier, Busy waiting, Communicating sequential processes, Condition variable, Critical section, Deadlock, Futex, Goroutine, Join, Lock ordering, Lock-free, Message passing, Multiprocessing, Mutex, Process, Race condition, Read-write lock, Select, Semaphore, Shared memory, Speedup and Amdahl's law, Spinlock, Thread

Effective Concurrency in Go

Burak Serdar · 1st edition · Packt Publishing · 2023
dedicated to concurrency · on the shelf · example code ↗

Chapters
  • 1 Concurrency – A High-Level Overview
  • 2 Go Concurrency Primitives
  • 3 The Go Memory Model
  • 4 Some Well-Known Concurrency Problems
  • 5 Worker Pools and Pipelines
  • 6 Error Handling
  • 7 Timers and Tickers
  • 8 Handling Requests Concurrently
  • 9 Atomic Memory Operations
  • 10 Troubleshooting Concurrency Issues

Cited on: Async stream, Atomic variable, Backpressure, Classic synchronization problems, Compare-and-swap, Debugging concurrent programs, Fan-out, fan-in, Goroutine, Happens-before, Join, Pipeline, Producer-consumer, Starvation, Supervision, Timers and tickers, Weak memory models and reordering, Worker pool

Concurrency in Go: Tools and Techniques for Developers

Katherine Cox-Buday · 1st edition · O'Reilly Media · 2017
dedicated to concurrency · on the shelf

Chapters
  • 1 An Introduction to Concurrency
  • 2 Modeling Your Code: Communicating Sequential Processes
  • 3 Go’s Concurrency Building Blocks
  • 4 Concurrency Patterns in Go
  • 5 Concurrency at Scale
  • 6 Goroutines and the Go Runtime
  • Appendix

Cited on: Async runtime (executor and reactor), Backpressure, Cancellation, Channel, Communicating sequential processes, Concurrency, Fan-out, fan-in, Goroutine, Idempotency, Leaked tasks, Race detector, Select, Supervision, Thread confinement, Timeout, Work stealing

Go in Practice

Nathan Kozyra, Matt Butcher, Matt Farina · 2nd edition · Manning Publications · 2025
a concurrency chapter in a broader book · on the shelf · publisher ↗ · example code ↗

The concurrency chapters
  • 5 Concurrency in Go

Cited on: Concurrency models

Learning Go: An Idiomatic Approach to Real-World Go Programming

Jon Bodner · 2nd edition · O'Reilly Media · 2024
a concurrency chapter in a broader book · on the shelf · example code ↗

The concurrency chapters
  • 12 Concurrency in Go
  • 14 The Context

Cited on: Select

Go Systems Programming: Master Linux and Unix system level programming with Go

Mihalis Tsoukalos · 1st edition · Packt Publishing · 2017
a concurrency chapter in a broader book · on the shelf · example code ↗

The concurrency chapters
  • 9 Goroutines — Basic Features
  • 10 Goroutines — Advanced Features

Cited on: Buffered and bounded channels, Goroutine, Race detector

Go in Action

William Kennedy, Brian Ketelsen, Erik St. Martin · 1st edition · Manning Publications · 2016
a concurrency chapter in a broader book · on the shelf · publisher ↗ · example code ↗

The concurrency chapters
  • 6 Concurrency
  • 7 Concurrency patterns

Introducing Go: Build Reliable, Scalable Programs

Caleb Doxsey · 1st edition · O'Reilly Media · 2016
a concurrency chapter in a broader book · on the shelf

The concurrency chapters
  • 10 Concurrency

The Go Programming Language

Alan A. A. Donovan, Brian W. Kernighan · 1st edition · Addison-Wesley (Pearson Education) · 2015
a concurrency chapter in a broader book · on the shelf · publisher ↗ · example code ↗

The concurrency chapters
  • 8 Goroutines and Channels
  • 9 Concurrency with Shared Variables

Cited on: Goroutine, I/O multiplexing, Race detector, Run-once initialization, Select

The Go Programming Language Phrasebook

David Chisnall · 1st edition · Addison-Wesley (Pearson Education) · 2012
a concurrency chapter in a broader book · on the shelf · publisher ↗

The concurrency chapters
  • 9 Goroutines
  • 10 Concurrency Design Patterns

Cited on: Communicating sequential processes, Daemon and detached threads, Goroutine, Map-reduce, Run-once initialization, Thread confinement