Go - Goroutines & Channels
Beginner 10/10
Teacher 10/10
Architect 10/10
Goroutines
go func(){
// runs concurrently
}()
Channels
ch := make(chan int)
go func(){ ch <- 42 }()
v := <-ch // 42
close(ch)
Buffered Channels
ch := make(chan string, 2)
ch <- "a"; ch <- "b"
Guidelines
- Prefer ownership or message passing to avoid data races.
- Use
context.Context
for cancellation. - Detect leaks: make sure goroutines can exit.