婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > linux下通過go語言獲得系統進程cpu使用情況的方法

linux下通過go語言獲得系統進程cpu使用情況的方法

熱門標簽:海外照相館地圖標注入駐 工商信用卡外呼系統教程 滁州自建外呼系統 客服級電銷機器人 外呼系統如何接收服務密碼 智能營銷軟件 經常接到推銷電話機器人的電話 外呼系統多少錢一年 旅游廁所如何電子地圖標注

本文實例講述了linux下通過go語言獲得系統進程cpu使用情況的方法。分享給大家供大家參考。具體分析如下:

這段代碼通過linux的系統命令 ps來分析cpu的使用情況,代碼如下:

復制代碼 代碼如下:
package main
import (
    "bytes"
    "log"
    "os/exec"
    "strconv"
    "strings"
)
type Process struct {
    pid int
    cpu float64
}
func main() {
    cmd := exec.Command("ps", "aux")
    var out bytes.Buffer
    cmd.Stdout = out
    err := cmd.Run()
    if err != nil {
        log.Fatal(err)
    }
    processes := make([]*Process, 0)
    for {
        line, err := out.ReadString('\n')
        if err!=nil {
            break;
        }
        tokens := strings.Split(line, " ")
        ft := make([]string, 0)
        for _, t := range(tokens) {
            if t!="" t!="\t" {
                ft = append(ft, t)
            }
        }
        log.Println(len(ft), ft)
        pid, err := strconv.Atoi(ft[1])
        if err!=nil {
            continue
        }
        cpu, err := strconv.ParseFloat(ft[2], 64)
        if err!=nil {
            log.Fatal(err)
        }
        processes = append(processes, Process{pid, cpu})
    }
    for _, p := range(processes) {
        log.Println("Process ", p.pid, " takes ", p.cpu, " % of the CPU")
    }
}

希望本文所述對大家的Go語言程序設計有所幫助。

您可能感興趣的文章:
  • go語言使用pipe讀取子進程標準輸出的方法
  • go語言通過管道連接兩個命令行進程的方法
  • golang與PHP輸出excel示例
  • golang模板template自定義函數用法示例
  • golang實現http服務器處理靜態文件示例
  • golang簡單獲取上傳文件大小的實現代碼
  • golang實現簡單的udp協議服務端與客戶端示例
  • golang簡單tls協議用法完整示例
  • golang守護進程用法示例

標簽:晉城 運城 喀什 楚雄 九江 本溪 深圳 湘潭

巨人網絡通訊聲明:本文標題《linux下通過go語言獲得系統進程cpu使用情況的方法》,本文關鍵詞  linux,下,通過,語言,獲得,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《linux下通過go語言獲得系統進程cpu使用情況的方法》相關的同類信息!
  • 本頁收集關于linux下通過go語言獲得系統進程cpu使用情況的方法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 泸西县| 石楼县| 鸡泽县| 乐东| 沙坪坝区| 富阳市| 连州市| 疏附县| 怀化市| 和平区| 民权县| 金溪县| 如皋市| 花莲县| 秀山| 泰和县| 太原市| 澳门| 会泽县| 睢宁县| 昭通市| 永吉县| 九龙坡区| 靖远县| 襄垣县| 凤山市| 瓦房店市| 公安县| 甘泉县| 钟祥市| 临高县| 固镇县| 阳西县| 依兰县| 枣强县| 新乡县| 宁强县| 金门县| 肇庆市| 连山| 本溪市|