74. 退出

未匹配的标注

使用 os.Exit 来立即进行带给定状态的退出。

exit.go

package main

import "fmt"
import "os"

func main() {

    // 当使用 `os.Exit` 时 `defer` 将_不会_ 执行,所以这里的 `fmt.Println`
    // 将永远不会被调用。
    defer fmt.Println("!")

    // 退出并且退出状态为 3。
    os.Exit(3)
}

注意,不像例如 C 语言,Go 不使用在 main 中返回一个整 数来指明退出状态。如果你想以非零状态退出,那么你就要 使用 os.Exit

如果你使用 go run 来运行 exit.go,那么退出状态将会被 go 捕获并打印。

$ go run exit.go
exit status 3

使用编译并执行一个二进制文件的方式,你可以在终端中查看退出状态。

$ go build exit.go
$ ./exit
$ echo $?
3

注意我们程序中的 ! 永远不会被打印出来。

本文章首发在 LearnKu.com 网站上。

上一篇 下一篇
讨论数量: 0
发起讨论 只看当前版本


暂无话题~