<-chan
chan<- Type
<-chan
func sendOnly(c chan<- int) {
    c <- 42 // 可以发送数据
}

func main() {
    c := make(chan int)
    go sendOnly(c)
    fmt.Println(<-c) // 在主 goroutine 中接收数据
}
<-chan Type
<-
func receiveOnly(c <-chan int) {
    fmt.Println(<-c) // 可以接收数据
}

func main() {
    c := make(chan int)
    go func() {
        c <- 42 // 在另一个 goroutine 中发送数据
    }()
    receiveOnly(c) // 在主 goroutine 中调用接收函数
}
<-