You are in my Digital Garden.
Go
Last modified: Apr 21st, 2025
Patterns
- Semaphore using channel - pasted:
c := make(chan struct{}, 10)
for job := range jobs {
c <- struct{}{}
go func(){
defer func() { <-c }()
}(job)
}
- CGo cross-compilation
- Worker pool example
Resources
- Making Games in Go for Absolute Beginners - tutorial using Ebitengine
- Vanity import paths in Go - blog post tutorial
- How I write HTTP services in Go after 13 years
- Generics in Go - Bitfield Consulting
- Build better Go release binaries
- Go Optimization Guide
Libraries
-
failsafe-go - “library for building fault tolerant Go applications”
- Failure handling (retry), load limiting, time limiting