一尘不染

空选择有什么作用?

go

我在其中找到了以下代码,net/http/httptest并且想知道空select语句在Go中的作用。

go s.Config.Serve(s.Listener)
if *serve != "" {
  fmt.Fprintln(os.Stderr, "httptest: serving on", s.URL)
  select {}
}

阅读 207

收藏
2020-07-02

共1个答案

一尘不染

select{}语句将永远 阻塞 。它类似于空for{}语句。

在大多数(全部?)受支持的Go架构上,空选择将产生CPU。空的for循环不会,即它将在100%CPU上“旋转”。

2020-07-02