什么是for循环与select和仅选择之间的区别?

Blu*_*Bot 3 go goroutine

无法从文档或谷歌完全理解它:

两者之间有什么区别,在哪种情况下你会使用哪一种?

    for{
       select{
       case s := <-something:
           fmt.Println(s)
       case done := <-true:
           return 
       }
    }
Run Code Online (Sandbox Code Playgroud)

       select{
       case s := <-something:
           fmt.Println(s)
       case done := <-true:
           return 
       }
Run Code Online (Sandbox Code Playgroud)

谢谢

Grz*_*Żur 9

带循环的代码将保持从通道打印数据,something 直到它在通道上接收任何内容done.

选择专用代码将要么从通道打印数据something 当它接收到的频道很少会退出done.执行一个案例.请记住,默认情况下,Go selectswitch语句没有任何影响.