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