前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >通道阻塞的几种场景

通道阻塞的几种场景

作者头像
MaybeHC
发布2024-04-23 19:40:52
710
发布2024-04-23 19:40:52
举报
文章被收录于专栏:技术之路技术之路
代码语言:javascript
复制
func main() {
    // 示例1。
    ch1 := make(chan int, 1)
    ch1 <- 1
    //ch1 <- 2 // 通道已满,因此这里会造成阻塞。


    // 示例2。
    ch2 := make(chan int, 1)
    //elem, ok := <-ch2 // 通道已空,因此这里会造成阻塞。
    //_, _ = elem, ok
    ch2 <- 1


    // 示例3。
    var ch3 chan int
    //ch3 <- 1 // 通道的值为nil,因此这里会造成永久的阻塞!
    //<-ch3 // 通道的值为nil,因此这里会造成永久的阻塞!
    _ = ch3

    //示例4
    ch4 := make(chan int)
    ch4 <= 3
	//因为 make(chan int) 初始化的是不带缓冲的通道。非缓冲通道只有在收发双方都就绪的情况下才能传递元素值,否则就阻塞。
}```
本文参与?腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2024-04-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客?前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与?腾讯云自媒体分享计划? ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com