RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:8:30-17:00
你可能遇到了下面的问题
关闭右侧工具栏

新闻中心

这里有您想知道的互联网营销解决方案
defer执行的顺序

defer先进后出
举例:

10年积累的成都网站制作、成都做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站制作后付款的网站建设流程,更有秀峰免费网站建设让你可以放心的选择与我们合作。

package main

import (
    "fmt"
    "os"
    "bufio"
)

//打开文件
func writeFile(filename string) {
    file, err := os.Create(filename)
    if err != nil {
        panic(err)
    }
    //往文件写内容(直接写文件会比较慢,所以这里用bufio。先写到内存里,再内存一下写进去会比较快)
    writer := bufio.NewWriter(file)
    for i := 0; i < 20; i++ {
        fmt.Fprintln(writer, i)
    }
    defer file.Close()
    defer writer.Flush()
}

func main() {
    //tryDefer()
    writeFile("haha.txt")
}

先执行writer.Flush(),再执行file.Close()。反之不能写入


名称栏目:defer执行的顺序
文章分享:http://scyingshan.cn/article/jogojp.html