A million ways to die from a data race in Go
⏴ Back to all articles
Published on 2025-11-21
Table of contents
Accidental capture in a closure of an outer variable
The fix
Learnings
Concurrent use of http.Client
The fix
Learnings
Improper lifetime of a mutex
The fix
Learnings
Concurrent reads and writes to standard library containers
The fix
Learnings
Conclusion
Ideas to improve the status quo
I have been writing production applications in Go for a few years now. I like some aspects of Go. One aspect I do not like is how easy it is to creat...
Read more at gaultier.github.io