golang面试求解,网上不是说panic最后才执行吗? 为什么执行多次结果会出现很多种情况呢?

15502013269 · 2018-04-08 14:17:32 · 1729 次点击

原来panic不管怎么样都是最后执行的

#13
更多评论

golang中不是有个 derfer func(){ if err:=recover();err!=nil{...}}的用法,如果panic在defer之后,derfer函数怎么抓取panic信息?

#1

@fnegyun 考点:defer执行顺序 解答: defer 是后进先出。 panic 需要等defer 结束后才会向上传递。 出现panic恐慌时候,会先按照defer的后入先出的顺序执行,最后才会执行panic。

你觉得他说的有问题吗?

#2