求大神指教, 如何写一个全局recover,保证服务不会因为go程里面的panic整个挂掉

ywdhzxf · · 3669 次点击
core dump 是go程序自己崩溃了产生的一个dump的文件, 和java的dump有一些类似。 panic如果不退出是有隐患的,我觉得recover的设计其实没啥用,因为这相当于让代码去处理一些基本上不能用程序处理的错误。 如果只是用来打日志可以直接用dump的信息, 或者程序退出后的输出信息,没必要用recover去做这个事情。 go的很多设计都在演化,并不是所有的设计都有用的,就像C语言的Longjump很少有人使用,甚至很多人不知道有这么个东西。但是它的用途和golang的panic recover是一模一样的。 还有java的goto, 有这个关键字但是从来不用,你能说java之父很脑残么? 语言这种东西,没有对错,尽可能的正确使用就是了。
#31
更多评论
polaris
社区,需要你我一同完善!
没法全局,只能每个 gorouitne 自己 recover 自己。
#1
<a href="/user/polaris" title="@polaris">@polaris</a> 如果不考虑go程的话可以监听, 但是go程里面不知道咋监听...
#2