sigar获取进程信息
最近工作中用到sigar,要用sigar获得相关的CPU信息,内存信息,进程信息等。但是大多数还是能在网上找到的。就只有获得进程的信息怎么找也找不以。今天贴出来和大家分享一下,还请各位指教。
// 获取进程的相关信息以及对进程信息进行包装
public List<ProcessInfo> getProcessInfo() {
Ps ps = new Ps();
List<ProcessInfo> processInfos = new ArrayList<ProcessInfo>();
try {
long[] pids = sigar.getProcList();
for (long pid : pids) {
List<String> list = ps.getInfo(sigar, pid);
ProcessInfo info = new ProcessInfo();
for (int i = 0; i <= list.size(); i++) {
switch (i) {
case 0: info.setPid(list.get(0)); break;
case 1: info.setUser(list.get(1)); break;
case 2: info.setStartTime(list.get(2)); break;
case 3: info.setMemSize(list.get(3)); break;
case 4: info.setMemUse(list.get(4)); break;
case 5: info.setMemhare(list.get(5)); break;
case 6: info.setState(list.get(6)); break;
case 7: info.setCpuTime(list.get(7)); break;
case 8: info.setName(list.get(8)); break;
}
}
processInfos.add(info);
}
} catch (SigarException e) {
e.printStackTrace();
}
return processInfos;
}
//进程信息的包装类
package com.yangdun.client.vo;
public class ProcessInfo {
private String pid;
private String user;
private String startTime;
private String memSize;
private String memUse;
private String memhare;
private String state;
private String cpuTime;
private String name;
public String getPid() {
return pid;
}
public void setPid(String pid) {
this.pid = pid;
}
public String getUser() {
return user;
}
public void setUser(String user) {
this.user = user;
}
public String getStartTime() {
return startTime;
}
public void setStartTime(String startTime) {
this.startTime = startTime;
}
public String getMemSize() {
return memSize;
}
public void setMemSize(String memSize) {
this.memSize = memSize;
}
public String getMemUse() {
return memUse;
}
public void setMemUse(String memUse) {
this.memUse = memUse;
}
public String getMemhare() {
return memhare;
}
public void setMemhare(String memhare) {
this.memhare = memhare;
}
public String getState() {
return state;
}
public void setState(String state) {
this.state = state;
}
public String getCpuTime() {
return cpuTime;
}
public void setCpuTime(String cpuTime) {
this.cpuTime = cpuTime;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
sigar获取进程信息相关推荐
- python psutil 获取命令历史_Python使用psutil获取进程信息的例子
psutil是什么 psutil是一个能够获取系统信息(包括进程.CPU.内存.磁盘.网络等)的Python模块.主要用来做系统监控,性能分析,进程管理,像glances也是基于psutil写成的. ...
- Python获取磁盘使用信息,python获取GPU信息,python根据进程号获取进程信息,pynvml 获取GPU信息,psutil 获取进程信息,系统信息等
一.工具:psutil模块 psutil是一个跨平台模块,试用相应方法可以直接获取计算机CPU,内存,磁盘,网络等资源使用情况:可以使用我们学习知识与这模块用来做系统监控,性能分析:如果大家熟悉Lin ...
- 获取进程的信息 linux,如何获取进程信息
如何获取进程信息 发布时间:2008-12-10 14:28:50来源:红联作者:kid420 在/proc中有各进程的信息,进入任意一个用cat maps可以看到象下面一样的信息 00ac5000- ...
- python psutil 进程cpu_python 模块psutil获取进程信息
获取进程信息 接续上篇<python 常用内建模块之psutil>安装psutil,并且获取一些基本信息,本篇介绍通过psutil获取到所有进程的详细信息: 1. 获取所有进程ID pri ...
- sigar如何获取linux的buffer内存,Linux 下使用Sigar 获取内存信息
上一篇文章介绍了linux下的sigar 库,并使用sigar 库来获取cpu 使用率,本文在这里介绍一下如何使用sigar 库获取内存信息. 和cpu 一样,sigar中有和内存相关的结构体siga ...
- python psutil模块查找进程_psutil获取进程信息
获取所有进程pid [root@bogon python_auto]# vim process.py !/usr/bin/env python import psutil pids = psutil. ...
- muduo:获取进程相关信息
muduo里面有专门获取进程信息的类,记录一下. // Use of this source code is governed by a BSD-style license // that can b ...
- golang 获取cpu 内存 硬盘 使用率 信息 进程信息
目录 1.获取 cpu 内存 磁盘使用率 2.获取本机信息 3. 获取CPU信息 4. 获取内存信息 5.获取磁盘信息 6.获取网络信息 7. 获取进程信息 使用库: go get github.co ...
- VC获取进程的cpu使用率、内存、线程数、句柄数等信息
//ProcessInfoCollect.h //进程信息采集#pragma once//枚举进程 typedef BOOL(_stdcall *ENUMPROCESS)(DWORD *pProces ...
最新文章
- MySQL00-这都不知道还TM学啥MySQL
- 公示 | 清华大学大数据研究中心“RONG”奖学金获奖名单
- 2022年:机器人技术的重大革命
- 软件分类:自由软件、开放源代码软件、公共软件、私有软件、版权所无软件...
- Flink 在 58 同城的应用与实践
- python集合的加减_python 中对list做减法操作
- aspx 修改了样式但是在点击按钮后被刷新_产品经理教程-Axure RP 9 基础操作(元件、布局、草图、样式)...
- 利用Referer请求头防止“盗链”
- Exadata Griddisk Can't be auto added
- 【阅读理解】机器阅读理解方向有什么值得follow的大佬,网站等等?
- Java并发编程实践-总结
- 苹果怎么应用分身_苹果ios/安卓微信双开技巧
- 安全提示:勒索病毒漏洞与CPU漏洞务必小心
- 围棋棋盘有多少正方形 19*19
- Win10字体模糊怎么办?
- u盘写保护,无法格式化
- 牛顿莱布尼茨计算机公式,牛顿莱布尼茨公式
- 基于eNSP的千人中型校园企业网络设计与规划(可以自己按步骤实现)
- linux磁盘分区详解
- push_back和emplace_back区别
热门文章
- One-Stage Visual Grounding之一种快速准确的单阶段视觉定位
- Oracle 常用的V$ 视图脚本
- 烟花代码运行示例(C++,easyX)
- Spring源码分析之TDDL
- git push到远程仓库时出现unable to access 'https://github.com/**': The requested URL returned error: 403
- 搜狗拼音带来的俩个烦人的弹窗解决方法
- 卷积神经网络的形象理解
- 计算机应用数学 教材,计算机应用数学(第2版)
- python 图片正方形化
- 27.WLAN组网介绍_VLAN在WLAN业务中的应用