码迷,mamicode.com
首页 > 其他好文 > 详细

Golang利用第三方包获取本机cpu使用率以及内存使用情况

时间:2020-01-28 15:42:32      阅读:473      评论:0      收藏:0      [点我收藏+]

标签:可用内存   使用率   lse   time   err   print   闲置   ack   cpu   

第三方包下载

$ github.com/shirou/gopsutil

 

获取内存方面的信息

package main

import (
	"fmt"
	"github.com/shirou/gopsutil/mem"
)

func main() {
	v, _ := mem.VirtualMemory()
	fmt.Println(v)
}

  

total // 内存大小
available // 闲置可用内存
used // 已使用内存
usedPercent // 已使用百分比

  

获取cpu方面的信息

package main

import (
	"fmt"
	"github.com/shirou/gopsutil/cpu"
)

func main() {

	res, err := cpu.Times(false) // false是展示全部总和 true是分布展示
	if err != nil {
		fmt.Println(err)
	}
	fmt.Println(res)
}

 

cpu // 具体cpu名称
user // 用户已使用cpu数值
system // 系统已使用cpu数值
idle // 闲置的cpu数值
.Total // 获取总cpu数值

  

Demo  

package main

import (
	"fmt"
	"github.com/shirou/gopsutil/cpu"
	"github.com/shirou/gopsutil/mem"
)

func main() {
	v, _ := mem.VirtualMemory()
	res, err := cpu.Times(false)
	if err != nil {
		fmt.Println(err)
	}
	fmt.Println(res[0].Total(),res[0].User,res[0].System,res[0].Idle)
	fmt.Printf("总内存: %v MB, 已使用:%v MB, 已使用百分比:%.f%%\n", v.Total>>20, v.Used>>20, ((res[0].Total()-res[0].Idle)/res[0].Total())*100)
}

  

 

Golang利用第三方包获取本机cpu使用率以及内存使用情况

标签:可用内存   使用率   lse   time   err   print   闲置   ack   cpu   

原文地址:https://www.cnblogs.com/binHome/p/12238070.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!