package main

import "fmt"

func main() {
	ch := make(chan int, 3)

	fmt.Println("kapasitas  :", cap(ch))
	fmt.Println("isi awal   :", len(ch))

	ch <- 10
	ch <- 20

	fmt.Println("isi setelah 2 kirim  :", len(ch))
	fmt.Println("menerima             :", <-ch)
	fmt.Println("isi setelah 1 terima :", len(ch))

	ch <- 30
	ch <- 40
	fmt.Println("isi setelah 4 total  :", len(ch))

	close(ch)
	for v := range ch {
		fmt.Println("drain    :", v)
	}
	fmt.Println("isi setelah drain    :", len(ch))
}
