// blocking.go
// throw: all goroutines are asleep - deadlock!
package main

import (
	"fmt"
)

func f1(in chan int) {
	fmt.Println(<-in)
}

func main() {
	out := make(chan int)
	//out := make(chan int, 1) // solution 2
	// go f1(out)  // solution 1
	out <- 2
	go f1(out)
}
