下面是一个获取当前进程 CPU 使用率的示例代码:
package main
import (
"fmt"
"runtime"
"time"
)
func main() {
var lastUsage runtime.MemStats
for {
var usage runtime.MemStats
runtime.ReadMemStats(&usage)
cpuUsage := int((usage.TotalAlloc - lastUsage.TotalAlloc) / 1024 / 1024)
fmt.Printf("CPU usage: %d MB/s\n", cpuUsage)
lastUsage = usage
time.Sleep(time.Second)
}
}
这个示例代码使用 runtime
包中的 ReadMemStats()
函数来获取进程内存信息,并计算出最近一秒钟内内存使用量的变化,从而得到 CPU 使用率。其中需要注意的是,CPU 使用率的计算方式可能因系统而异,在不同的操作系统上可能需要使用不同的方法来计算。