常规终止的可能方案

时间:2018-04-24 10:43:12

标签: go goroutine

必须永久运行的go routine可以终止的可能情况是什么?

2 个答案:

答案 0 :(得分:2)

如果它处于非终止for循环中,它将仅在恐慌时退出,或者如果操作系统终止进程(程序)或机器发生故障。

答案 1 :(得分:0)

来自documentation

  

执行错误(例如尝试将数组索引越界)会触发运行时混乱,相当于使用实现定义的接口类型runtime.Error的值调用内置函数panic。

除此之外,当内存不足时,它可以panic

如果go routine遇到panic,则可以使用defer-panic-recover来处理它。 This官方文档的链接提供了有关其使用的更多信息。