生产消费实例
package main
import (
"fmt"
"time"
)
func producter(pname string, ch chan int) {
for i := 0; i < 4; i++ {
fmt.Println("producuter=====", pname, ":", i)
ch <- i
}
fmt.Println("producter===closed")
}
func consumer(cname string, ch chan int) {
for i := range ch {
fmt.Println("consumer======", cname, ":", i)
}
fmt.Println("consumer===closed")
}
func main() {
data := make(chan int)
go producter("生产者1", data)
go producter("生产者2", data)
go consumer("消费者1", data)
go consumer("消费者2", data)
time.Sleep(3 * time.Second)
close(data)
time.Sleep(3 * time.Second)
}