如果我们需要一个信道专门发送数据,一个信道专门接收数据,可以这样写:
(我们假设要发送和接收的数据是9):
package main
import (
"fmt"
"time"
)
//只写信道定义
type Writter = chan<- int
//只读信道定义
type Reader = <-chan int
func main() {
//声明一个信道
var ch = make(chan int)
go func() {
var writter Writter = ch
fmt.Println("写入数据:9")
writter <- 9
}()
go func() {
var reader Reader = ch
data := <-reader
fmt.Printf("读出数据:%d", data)
}()
time.Sleep(time.Second)
}