当前位置: 首页 > news >正文

网站建设电子书太原关键词优化公司

网站建设电子书,太原关键词优化公司,互联网推广招聘,邯郸seo推广笔记仓库:gitee.com/xiaoyinhui 代码中的解释纯个人理解,有不对的望指出 package testsimport ("fmt""testing" )var uCnt int 0func TestSelece(t *testing.T) {// 对于 select 语句,在进入该语句时,会按源…

笔记仓库:gitee.com/xiaoyinhui


代码中的解释纯个人理解,有不对的望指出

package testsimport ("fmt""testing"
)var uCnt int = 0func TestSelece(t *testing.T) {// 对于 select 语句,在进入该语句时,会按源码的顺序对每一个 case 子句进行求值:这个求值只针对发送或接收操作的额外表达式/*根据下面【select01()】的输出结果 可以分析出来【对于 select 语句,在进入该语句时,会按源码的顺序对每一个 case 子句进行求值】的意思可以看到每次遍历都会计算出3次方法 showStr 的结果,直白点讲就是会执行一次这个方法并且 还是按照代码的顺序 123 进行顺序执行的至于选择那个进行执行这就没有办法确定,因为都可以执行,选择那个执行得看底层的选择*/select01()fmt.Println("")fmt.Println("******************************************")fmt.Println("******************************************")fmt.Println("")/*根据下面【select02()】的输出结果 可以分析出来【这个求值只针对发送或接收操作的额外表达式】的意思前面的部分就不解释了,后面的就是 Channel 的接收不会执行,因为这里如果跟上面的方法一样执行了,那就是给取出来了,结果就不会 打印了show1 后还能打印两次接收的c2的值*/select02()
}func showStr1() int {uCnt++fmt.Println("~~~~~~~~~~~~~11111~~~~~~~~~~~~~~", uCnt)return uCnt
}func showStr2() int {uCnt++fmt.Println("~~~~~~~~~~~222222~~~~~~~~~~~~~~~", uCnt)return uCnt
}func showStr3() int {uCnt++fmt.Println("~~~~~~~~~~~333333~~~~~~~~~~~~~~~", uCnt)return uCnt
}func select01() {c1 := make(chan int)go func() {for v := range c1 {if v != 0 {fmt.Println("++++++++", v)}}}()for i := 1; i <= 3; i++ {select {case c1 <- showStr1():fmt.Println("show1 ================", i)case c1 <- showStr2():fmt.Println("show2 ================", i)case c1 <- showStr3():fmt.Println("show3 ================", i)}}close(c1)/*某次输出结果~~~~~~~~~~~~~11111~~~~~~~~~~~~~~ 1~~~~~~~~~~~222222~~~~~~~~~~~~~~~ 2~~~~~~~~~~~333333~~~~~~~~~~~~~~~ 3show1 ================ 1~~~~~~~~~~~~~11111~~~~~~~~~~~~~~ 4~~~~~~~~~~~222222~~~~~~~~~~~~~~~ 5~~~~~~~~~~~333333~~~~~~~~~~~~~~~ 6++++++++ 1++++++++ 5show2 ================ 2~~~~~~~~~~~~~11111~~~~~~~~~~~~~~ 7~~~~~~~~~~~222222~~~~~~~~~~~~~~~ 8~~~~~~~~~~~333333~~~~~~~~~~~~~~~ 9show3 ================ 3++++++++ 9*/
}func select02() {c1 := make(chan int)c2 := make(chan int)go func() {for v := range c1 {if v != 0 {fmt.Println("++++++++", v)}}}()go func() {c2 <- 88c2 <- 99}()for i := 1; i <= 5; i++ {select {case c1 <- showStr1():fmt.Println("show1 ================", i)case c1 <- showStr2():fmt.Println("show2 ================", i)case c1 <- showStr3():fmt.Println("show3 ================", i)case mV := <-c2:fmt.Println("mV := <-c2 ================", i, mV)}}close(c1)/*某次输出结果~~~~~~~~~~~~~11111~~~~~~~~~~~~~~ 1~~~~~~~~~~~222222~~~~~~~~~~~~~~~ 2~~~~~~~~~~~333333~~~~~~~~~~~~~~~ 3show1 ================ 1~~~~~~~~~~~~~11111~~~~~~~~~~~~~~ 4~~~~~~~~~~~222222~~~~~~~~~~~~~~~ 5~~~~~~~~~~~333333~~~~~~~~~~~~~~~ 6mV := <-c2 ================ 2 88~~~~~~~~~~~~~11111~~~~~~~~~~~~~~ 7~~~~~~~~~~~222222~~~~~~~~~~~~~~~ 8~~~~~~~~~~~333333~~~~~~~~~~~~~~~ 9mV := <-c2 ================ 3 99~~~~~~~~~~~~~11111~~~~~~~~~~~~~~ 10++++++++ 1~~~~~~~~~~~222222~~~~~~~~~~~~~~~ 11~~~~~~~~~~~333333~~~~~~~~~~~~~~~ 12show1 ================ 4~~~~~~~~~~~~~11111~~~~~~~~~~~~~~ 13~~~~~~~~~~~222222~~~~~~~~~~~~~~~ 14~~~~~~~~~~~333333~~~~~~~~~~~~~~~ 15++++++++ 10++++++++ 14show2 ================ 5*/
}

一点点笔记,以便以后翻阅。

http://www.hkea.cn/news/86379/

相关文章:

  • 河南焦作有做网站开发的公司吗巩义网络推广公司
  • 邓州做网站网络广告有哪些形式
  • 爬闪数媒 网站建设网站建站流程
  • 网站建设广州白云百度统计app下载
  • 惠州短视频seoseowhy论坛
  • 肇庆网站快速排名优化温州seo排名公司
  • 北京疫情死亡人数最新消息王通seo赚钱培训
  • 北京做网站的外包公司营销策划方案案例范文
  • 专业做酒店网站关键词优化排名软件流量词
  • 做网站推广代理上海网络推广服务
  • wordpress可以做大吗搜索引擎优化的英语简称
  • 民治专业做网站公司中国企业500强排行榜
  • 潍坊 公司 网站seo点击排名器
  • 网站可以做赌博广告建站宝盒
  • 运城市做网站英文seo外链
  • 江宁网站建设如何建立网上销售平台
  • 淄博企业网站建设有限公司搜索引擎关键词竞价排名
  • 网站的优点企业专业搜索引擎优化
  • 哪里有软件开发培训机构无锡seo培训
  • 网站怎么做反链seo是什么品牌
  • 技术型网站做哪一种好软文范例大全100
  • 百度搜索什么关键词能搜到网站seo高效优化
  • 网站搭建分站需要多少钱互联网营销策划
  • 音乐网站的音乐怎么做seo先上排名后收费
  • 清河做网站报价seo实战培训王乃用
  • wordpress 回收站在哪个文件夹营销方式和手段
  • 垂直型电商网站如何做快速排名软件哪个好
  • 做产品推广有网站比较好的免费自助建站平台
  • 番禺网站建设公司排名百度推广页面投放
  • 沈阳做微网站百度收录刷排名