package blocking

import "time"

var BufCh = make(chan int, 3)

func EfficientProducer() {
	for i := 0; i < 5; i++ {
		BufCh <- i
	}
	close(BufCh)
}

func EfficientConsumer() {
	for val := range BufCh {
		time.Sleep(time.Second) // slow processing
		println("Received:", val)
	}
}
