4
我正在构建一个需要启动自己的HTTP服务器的命令行应用程序。 我的想法是启动够程内的http服务器在我的主要程序是这样的:这是在golang中终止goroutine的正确方法吗?
func main() {
go myserver()
// perform lots of time-consuming tasks
}
func myserver() {
s := &http.Server{
Addr: ":8080",
Handler: MyHandler{},
}
log.Fatal(s.ListenAndServe())
}
- 我的主要功能,需要能够告诉够程死亡。由于网络服务器在
ListenAndServe
方法上阻塞,因此无法通过sync.WaitGroup
或通道发送信号。 - 我的一个想法是对Web服务器发出HTTP POST,并要求它在收到特定的商定价值后自杀。
是否还有其他替代方法对golang来说是惯用的?
我正在触发http客户端请求,他们都发送“连接:关闭”。谢谢。 – canadadry