【golang】多个defer的执行顺序以及其相关练习

前言

响水网站建设公司成都创新互联,响水网站设计制作,有大型网站制作公司丰富经验。已为响水上千多家提供企业网站建设服务。企业网站搭建\成都外贸网站制作要多少钱,请找那个售后服务好的响水做网站的公司定做!

  做了几道关于defer的测试题,吓了一大跳,感觉自己之前的理解有些问题,所以写下这篇博客,加深下印象。

正文:

  多个defer的执行顺序:

   先进后出,类似于栈的特性。

  下面我们来测试下:

  1.defer 与 panic:

    

func deferAndPanic() {
    defer func() { fmt.Println("defer1") }()
    defer func() { fmt.Println("defer2") }()
    defer func() { fmt.Println("defer3") }()
    panic("异常内容")
}

func main() {
    deferAndPanic()
    fmt.Println("main 正常结束")
}

网站栏目:【golang】多个defer的执行顺序以及其相关练习
标题URL:http://csruizhi.cn/article/dsoicjg.html

其他资讯

Copyright © 2007-2024 成都优众联杰科技有限公司 All Rights Reserved 蜀ICP备2024116266号
友情链接: 成都网站建设 成都h5网站建设 网站建设 成都响应式网站建设公司 成都网站建设 成都营销网站建设 重庆企业网站建设 成都网站制作 成都商城网站建设 网站制作报价 手机网站制作 成都网站建设公司 广安网站设计 定制网站建设多少钱 成都网站设计 成都网站建设 成都营销网站制作 企业网站建设 定制网站建设 营销型网站建设 app网站建设 阿坝网站设计