As this ebook edition doesn't have fixed pagination, the page numbers below are hyperlinked for reference only, based on the printed edition of this book.
A
anomalies
atomic memory operations 161
atomic operation 13
atomics, practical uses
cancellations 168
counters 165
heartbeat 165
B
concurrency, limiting 143, 144
containerized backend services 137
HTTP and gRPC services 135
C
closing 33
unbuffered channel 33
closure 28
Coffman conditions 16
comma-separated values (CSV) 93
Communicating Sequential Processes (CSP) 2
compare-and-swap (CAS) operation 163, 164
Broadcast operation 52
Signal operation 52
Wait operation 52
timeouts 133
context.Context object 130
convert 94
cooperative threading 7
counters 165
critical section 14
D
debugging concurrent programs 10
dining philosophers problem 5, 6, 73-79
E
encode 94
in pipelines 115
in servers 116
F
failures
first-in, first-out (FIFO) 31
G
Go concurrency primitives, synchronization characteristics
atomic memory operations 66
goroutines 62
mutexes 65
WaitGroup 68
H
happened-before relationship 60
between, memory operations 58-61
heartbeat utility 165
L
M
memory barrier 9
memory guarantees
of atomic memory operations 161-163
memory model 58
message passing
multiple streams
mutual exclusion property 14
N
net/http/pprof package 177
non-preemptive threading 6
Non-Uniform Memory Access (NUMA) system 8
P
parse 94
error handling 115
pipeline stages
convert 94
encode 94
parse 94
preemptive threading 6
producer-consumer problem 69-73
progress meter 165
R
request multiplexing 137
runtime/pprof package 177
S
scheduler 24
scope 28
semaphore 143
sequenced-before relationship 58
servers
error handling 116
shared acct.Mutex 15
shared memory
SlowFunc function 178
stack traces
streaming 145
synchronizing read operations 59
synchronizing write operations 59
sync.Mutex 14
T
thread 24
versus goroutines 25
Thread 1 30
Thread 2 30
Thread 3 30
thread state diagram 7
tickers
timeout 126
timers
time-sharing 6
token bucket algorithm
for rate limiting 79
U
unbuffered channel 33
Uniform Memory Access (UMA) system 8
W
using 50