go 中的管道通信
管道通信直连,管道的特点就是单工,一方只能接受/发送
package main
import (
"fmt"
)
func ping(pings chan<- string, msg string){
pings <- msg
}
/*
函数pong中
参数pings 是一个接收通道(只能从管道接收数据)
参数pongs 是一个发送通道(只能发送数据给管道)
<- 在最前头就是发送,反之就是接收
*/
func pong(pings <-chan string, pongs chan<- string){
/* msg := <- pings
pong <- msg
*/
msg := <-pings // pong函数从只接收通道接收数据
pongs <- msg