个人技术分享

chan通道在go语言的办法编程中使用频繁,我们可以通过以下2种方式来判断channel通道是否已经关闭,1是使用 for  range循环,另外是通过 for循环中if 简短语句的 逗号 ok 模式来判断。

示例代码如下:


//方式1 通过for range形式判断
for v := range ch {
   // 通道正常
}


//方式2 通过for if 逗号 ok 模式来判断

// 死循环
for {
    if v, open := <-ch; !open {
        break // 通道是关闭的,终止循环
    } else {
       // 通道正常
    }
}