defer用途

Posted lajiao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了defer用途相关的知识,希望对你有一定的参考价值。



package main

/*
defer :程序退出时执行,先进后执行
defer庸碌:
1、关闭文件句柄
2.锁资源释放
3.数据库连接释放
*/
import (
    "fmt"
)

func main() {
    i := 0
    defer fmt.Println(i) // 先进后执行
    defer fmt.Println("record")
    i = i + 10
    fmt.Println("start!")
    res := niming(1, 12)
    fmt.Println(res)
}

func niming(a, b int) int {
    result := func(a, b int) int {
        return a + b
    }
    return result(a, b)
}

/*
start!
13
record
0
*/

// func read() {
//  r := "../test.go"
//  v := open(r)
//  defer v.close()
// }

以上是关于defer用途的主要内容,如果未能解决你的问题,请参考以下文章

C#常用代码片段备忘

如何使用 jQuery 延迟?

Go 系列教程 ——第 29 篇:Defer

原生 JS 中 延迟脚本和异步脚本

这个代码片段有啥作用?

js延迟加载的六种方式