package main
import "fmt"
type Dog struct {
Nmae string
}
func main(){
ch :=make(chan Dog,1)var d Dog
d.Nmae ="大黄"
ch <- d
close(ch)
result :=<- ch
fmt.Println(result)}
package main
import("fmt")// 字段确保可导出type Dog struct{
Name string
Age int}funcmain(){// 可以在通道中发送和接收结构体类型的值// 定义一个缓冲区的 channel
dogCh :=make(chan Dog,1)// 结束 main 之前 关闭deferclose(dogCh)// dog 在 chan 中传输,需要确保结构体类型的值是可序列化var dog Dog
dog.Name ="xiaohei"
dog.Age =1// 发送
dogCh <- dog
// 读取
result :=<-dogCh
fmt.Println(result)}
输出
结果:可以
发送的数据类型,要和创建channel时声明的类型一致~