Golang 提供 runtime 库用来获取和设置 golang 的运行时环境
示例
package main
import (
"fmt"
"runtime"
)
func main() {
// 获取 GOROOT
fmt.Println(runtime.GOROOT())
// 获取程序的 CPU 数量
fmt.Println(runtime.NumCPU())
// 获取 goroutine 数量,默认为 1(main 进程)
fmt.Println(runtime.NumGoroutine())
// 设置程序的 CPU 数量
n := runtime.GOMAXPROCS(1)
fmt.Println(n, runtime.NumCPU())
}