这段代码为什么一直报这个错fatal error: all goroutines are asleep - deadlock!

54 阅读1分钟
func main() {
   c := make(chan int)
   var wg sync.WaitGroup
   wg.Add(10)
   go func() {
      defer wg.Done()
      for i := 0; i < 10; i++ {
         c <- i
      }
   }()

   go func() {
      defer close(c)
      for item := range c {
         fmt.Println(item)
      }
   }()
   wg.Wait()
   //time.Sleep(time.Second)
   //close(c)
}