go语言中避免main函数退出的必要性
在GO语言中main函数的过早退出有时是有害的,原因是main函数的退出会导致整个程序的退出,如果程序是基于协程来实现的,那么main函数的退出必然导致协程无法执行完成而退出,从而导致程序出现非预期的结果。因此,在很多时候我们是不希望main函数提前退出的。下面几种方式可以阻止main函数提前退出。方式一func main() {defer func() {for {}}()}方式二func ma
·
在GO语言中main函数的过早退出有时是有害的,原因是main函数的退出会导致整个程序的退出,如果程序是基于协程来实现的,那么main函数的退出必然导致协程无法执行完成而退出,从而导致程序出现非预期的结果。
因此,在很多时候我们是不希望main函数提前退出的。下面几种方式可以阻止main函数提前退出。
方式一
func main() {
defer func() {
for {}
}()
}
方式二
func main() {
defer func() {
<- make(chan bool)
}()
}
方式三
func main() {
defer func() {
select{}
}()
}
更多推荐




所有评论(0)