err := http.ListenAndServe(":"+svcPort, nil)
if err != nil {
log.Println("http.ListenAndServe error = [" + err.Error() + "]")
//return
os.Exit(1)
if err != nil {
log.Println("http.ListenAndServe error = [" + err.Error() + "]")
//return
os.Exit(1)
}
今儿遇到的一个报错问题,引发了本问题的思考:
使用return,http服务的端口被占用,log.Println错误之后,其他模块还报了一个index out of range错误,但是换成os.Exit(1)之后就没有index out of range的报错。用os.Exit(1)打印错误信息之后程序直接退出,当然不会有index out of range,但是用return就有,不禁在想return之后又执行了什么呢,main()里面的return不也是能够退出吗?