多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
[TOC] channel必须初始化才能写入数据,也必须make后才能使用,管道是有类型的,如果是int类型,则只能写入整数int ### **第一种:channel声明** **var 变量名 chan 数据类型** 声明int类型的chan ``` var ch chan int ``` 声明string类型的chan ``` var ch chan string ``` 声明map类型chan ``` var ch chan map[int]string ``` ### **第二种:使用make定义,无缓冲channel** ``` var ch1 chan int = make(chan int) var ch2 make(chan int) ch3 := make(chan int) ``` ### **第三种:使用make定义,有缓冲channel** ``` var ch1 chan int = make(chan int,10) var cha2 = make(chan int,10) ch3 := make(chan int,10) ``` ### **第四种:只读channel** ``` var ch1 <- chan int var ch2 <- chan int = make(<- chan int ,10) var ch3 = make(<- chan int,10) ch4 := make(<- chan int ,10) ``` ### **第五种:只写channel** ``` var ch1 chan <- int var ch2 chan <- int = make(chan <- int ,10) var ch3 = make(chan <- int,10) ch4 := make(chan <- int,10) ```