Go-标准库-runtime(一)

2023-04-22 10:25:03 浏览数 (1)

获取goroutine数量

runtime包中的NumGoroutine函数可以获取当前程序中正在运行的goroutine数量,如下所示:

代码语言:javascript复制
package main

import (
	"fmt"
	"runtime"
)

func main() {
	num := runtime.NumGoroutine()
	fmt.Println(num)
}

上面的代码输出为当前程序中正在运行的goroutine数量。

获取CPU数量

runtime包中的NumCPU函数可以获取当前计算机的CPU数量,如下所示:

代码语言:javascript复制
package main

import (
	"fmt"
	"runtime"
)

func main() {
	num := runtime.NumCPU()
	fmt.Println(num)
}

上面的代码输出为当前计算机的CPU数量。

设置CPU数量

runtime包中的GOMAXPROCS函数可以设置程序中可用的CPU数量,如下所示:

代码语言:javascript复制
package main

import (
	"fmt"
	"runtime"
)

func main() {
	num := runtime.NumCPU()
	fmt.Println("num of CPU:", num)
	runtime.GOMAXPROCS(num)
}

上面的代码将程序中可用的CPU数量设置为当前计算机的CPU数量。

go

0 人点赞