当前位置: GO > go defer和recover

go defer和recover

2025-02-14 分类:GO 作者:admin 阅读(25)

  1. defer是倒序执行

    • 完全正确!defer 语句在函数返回时按逆序执行。
  2. defer执行方法中的变量,是声明时的值,而不是方法执行完变量的值

    • 也很准确!defer 语句中的变量在声明时就会被捕获,之后的变化不会影响已捕获的值。
    • 特殊情况:如果变量返回值声明,则是执行变量的值。
  3. recover只能定义在defer中,才能正常执行

    • 正确,recover 只有在 defer 函数中调用时才能有效捕获 panic
  4. 发生panic,下面的代码不会再执行,执行defer方法,有返回值的函数,返回初始值

    • 这条总结得很好!在发生 panic 时,后续代码不会执行,但 defer 会被调用,且如果在 defer 中有 recover,可以恢复程序的执行。
  5. recover 函数只能捕获在同一个 goroutine 中发生的 panic

    • 完全正确!这是 recover 的一个重要特性。

「三年博客,如果觉得我的文章对您有用,请帮助本站成长」

赞(0) 打赏

支付宝
微信
0

支付宝
微信
标签:

上一篇:

下一篇:

你可能感兴趣

共有 0 - go defer和recover

博客简介

精彩评论

  • admin(6年前 (2020-03-09))

    分别用不同厚度的筏板定义,画图后这设置筏板变截面处理。 http://f.fwxgx.co...

    评:新文章!
  • admin(6年前 (2020-03-09))

    分别用不同厚度的筏板定义,画图后这设置筏板变截面处理。 http://f.fwxgx.co...

    评:新文章!
  • admin(6年前 (2020-03-09))

    新增一个框架图! http://biji.jinli.vip/wp-content/upl...

    评:新文章!
  • 一位WordPress评论者(6年前 (2020-02-13))

    嗨,这是一条评论。 要开始审核、编辑及删除评论,请访问仪表盘的“评论”页面。 评论者头像来自...

    评:世界,您好!