Go routine patterns - For Select
tags: learning go programming
content
for select pattern
func child(done <-chan bool) {
for {
select {
case <-done:
fmt.Println("done received")
return
default:
// do work
}
}
}
func main() {
done := make(chan bool)
defer close(done)
go child(done)
// do something
done <- true
}