我有一个简单的golang程序,它在执行名为 testFunc
的函数之前侦听端口上的活动func main() {
http.HandleFunc("/test", testFunc)
http.ListenAndServe(":1337", nil)
}
当我构建这个程序时,运行它并转到http://localhost:1337/test,它运行正常。
当我终止程序并尝试再次运行时,程序立即终止,显示没有错误输出。
例如,当我将端口更改为1338时,它第一次工作,然后每次都失败。有什么想法吗?
答案 0 :(得分:2)
该端口最有可能正在使用中。捕获错误将为您提供更多详细信息。
if err := http.ListenAndServe(":1337", nil);err != nil {
log.Fatal("ListenAndServe: ", err)
}
答案 1 :(得分:1)
确定错误是我的愚蠢错误。我今天已经从使用PC切换到Mac并没有意识到Ctrl + C杀死了当前命令而不是Ctrl + z,它只是返回shell ...因此进程仍在运行并相互阻塞