我在其中找到了以下代码,net/http/httptest并且想知道空select语句在Go中的作用。
net/http/httptest
select
go s.Config.Serve(s.Listener) if *serve != "" { fmt.Fprintln(os.Stderr, "httptest: serving on", s.URL) select {} }
空select{}语句将永远 阻塞 。它类似于空for{}语句。
select{}
for{}
在大多数(全部?)受支持的Go架构上,空选择将产生CPU。空的for循环不会,即它将在100%CPU上“旋转”。