配置 Go 开发环境
本节将讨论使用runtime package 的功能和属性查找有关当前 Go 环境的信息。本节中将程序命名为goEnv.go,它将分为两部分。
第一部分:
package main
import (
"fmt"
"runtime"
)runtime package 包含获取 runtime 信息的函数和属性。 goEnv.go的第二个代码部分包含main()函数的实现:
func main() {
fmt.Print("You are using ", runtime.Compiler, " ")
fmt.Println("on a", runtime.GOARCH, "machine")
fmt.Println("Using Go version", runtime.Version())
fmt.Println("Number of CPUs:", runtime.NumCPU())
fmt.Println("Number of Goroutines:", runtime.NumGoroutine())
}在装有 Go 1.11.4 的 macOS Mojave 机器上执行goEnv.go将输出:
$ go run goEnv.go
You are using gc on a amd64 machine
Using Go version go1.11.4
Number of CPUs: 8
Number of Goroutines: 1同样的代码在装有 Go 1.3.3 的 Debian Linux 机器上输出如下:
在名为requiredVersion.go的程序中说明了获取到有关 Go 环境的信息有什么用处,该程序会告诉你是否使用的是 Go1.8 或更高版本:
stringsGo 标准包用于拆分从runtime.Version()获得的 Go 版本字符串,以获取其前两个部分,而 strconv.Atoi()函数用于将字符串转换为整数。
在 macOS Mojave 机器上执行requiredVersion.go将输出:
但如果你在 Debian Linux 机器上运行requiredVersion.go,它将输出:
因此,通过调用程序requiredVersion.go,你能够确定 UNIX 计算机是否具有所需的 Go 版本。
Last updated
Was this helpful?