Files
2025-10-24 15:19:55 +08:00

32 lines
439 B
Go

package main
import (
"fmt"
"sync"
)
func main() {
channel := make(chan int, 10)
var wg sync.WaitGroup
wg.Add(1)
go func(wg *sync.WaitGroup, channel chan<- int) {
defer wg.Done()
for i := 0; i < 100; i++ {
channel <- i
}
close(channel)
}(&wg, channel)
wg.Add(1)
go func(wg *sync.WaitGroup, channel <-chan int) {
defer wg.Done()
for num := range channel {
fmt.Println(num)
}
}(&wg, channel)
wg.Wait()
}