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

ecshop网站开发个人模板建站

ecshop网站开发,个人模板建站,珠海新闻今日头条,商丘市网1、定义 管道是golang语言提供的goroutine间的通讯方式,channel可以让一个goroutine发送特定的值给另一个goroutine的通讯机制。 管道是引用类型。 golang语言中channel是一种特殊的类型。像一个队列一样,先进先出。 var 变量 chan 元素类型 var ch1 …
1、定义

管道是golang语言提供的goroutine间的通讯方式,channel可以让一个goroutine发送特定的值给另一个goroutine的通讯机制。

管道是引用类型。

golang语言中channel是一种特殊的类型。像一个队列一样,先进先出。

var 变量 chan 元素类型

var ch1 chan int //声明一个传递整型的管道

var ch2 chan []int 

 2、创建管道

ch := make(chan 类型 容量)

//给管道里面存储数据

ch <- 10

// 获取管道里面的内容

a:=<-ch

<=-ch  //从管道取值,不赋给变量

3、管道阻塞

1、管道存储的数据超过容量。

2、在没有使用协程的情况下,如果管道的数据全部取出,再取就会报deadlock

4、循环遍历管道数据

使用for range遍历管道,需要关闭管道 close(ch1)

for 循环 可以不用关闭


package mainimport "fmt"func main() {var ch1 = make(chan int, 10)for i := 0; i < 10; i++ {ch1 <- i}close(ch1)               //关闭管道for value := range ch1 { //管道没有keyfmt.Println(value)}
}
 5、管道和goroutine结合使用
package mainimport ("fmt""sync""time"
)var wg sync.WaitGroupfunc writeData(ch chan int) {for i := 0; i < 10; i++ {ch <- ifmt.Printf("写入数据%v成功\n", i)time.Sleep(time.Millisecond * 50)}close(ch)wg.Done()
}func readData(ch chan int) {for v := range ch {fmt.Printf("读取数据%v成功\n", v)time.Sleep(time.Millisecond * 50)}wg.Done()
}func main() {var ch1 = make(chan int, 10)wg.Add(1)go writeData(ch1)wg.Add(1)go readData(ch1)wg.Wait()
}
6、单向管道

//管道声明为只写

ch2 := make(chan<- int,2)

//管道声明为只读

ch3 :=make(<-chan int,2)

7、多路复用 select

select 的使用类似于 switch 语句,它有一系列 case 分支和一个默认的分支。每个 case 会对
应一个管道的通信(接收或发送)过程。select 会一直等待,直到某个 case 的通信操作完成
时,就会执行 case 分支对应的语句。

使用select来获取channel里面的数据不需要关闭channel

select{
case <-ch1:
...
case data := <-ch2:
...
case ch3<-data:
...
default:
默认操作
}

http://www.hengruixuexiao.com/news/15311.html

相关文章:

  • 湘潭做网站的公司网络广告投放
  • 网站做301重定向手机百度旧版本下载
  • 五个h5制作网站厦门seo测试
  • 武汉专业建站seo推广员是做什么的
  • 彩票网站的建设优化设计四年级上册数学答案
  • 网站设计师需要学什么成都最新消息今天
  • 福田庆三价格百度seo还有前景吗
  • flask做的网站如何上传文件网站设计论文
  • 贵州省安顺市网站建设企业网站设计与推广
  • 正规淘宝店铺交易平台苏州搜索引擎优化
  • 网站支付的功能如何做企业网站seo案例
  • 网站开发精灵湖南百度推广代理商
  • 1元涨1000粉网站如何进行优化
  • 网站文章正文可以做内链吗西安网站建设公司
  • 学做点心的网站站长工具浪潮
  • 阿里云服务起做网站软文类型
  • 常州哪家做网站便宜今日重大新闻头条财经
  • 苏宁易购网站设计怎么制作大兴今日头条新闻
  • iis 网站建设中软文发布平台哪个好
  • 企业网站建站 费用网络营销课程作业
  • 做网站怎么选择服务器的大小网络推广方案有哪些
  • 汽车之家网站如何做好seo基础优化
  • 手机网站主机智能营销系统开发
  • 做设计找图有哪些网站有哪些问题精准网络推广
  • 单页网站 开元关键词seo是什么
  • 重庆定制网站制作价格友情链接建立遵循的原则包括
  • 网站建设的详细步骤游戏推广赚钱
  • 用什么做公司宣传网站百度关键词优化多少钱一年
  • 品牌logo设计公司佛山seo培训机构
  • 网站建设与管理的内容百度网址查询