1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24package main import ( "fmt" "runtime" "time" ) func main() { var ch chan int go func() { ch = make(chan int, 1) ch <- 1 }() go func(ch chan int) { time.Sleep(5 * time.Second) <-ch }(ch) c := time.Tick(500 * time.Millisecond) for range c { fmt.Printf("#goroutines: %d\n", runtime.NumGoroutine()) } }