psutil的Process python获取进程信息「建议收藏」

psutil的Process python获取进程信息「建议收藏」系统进程信息psutil.Process()1.创建指定进程号的对象s=psutil.Process(1701)2.进程PID:pids.pid3.进程名称:name()s.name()4.进程当前状态:status()s.status()5.进程是否还在运行:is_running()返回此进程是否正在运行。它还检查PID是否已被另一个进程重用…

大家好,又见面了,我是你们的朋友全栈君。

系统进程信息 psutil.Process()

1. 创建指定进程号的对象

s = psutil.Process(1701)

2. 进程PID:pid

s.pid

在这里插入图片描述

3. 进程名称:name()

s.name()

在这里插入图片描述

4. 进程当前状态:status()

s.status()

在这里插入图片描述

5. 进程是否还在运行 :is_running()

返回此进程是否正在运行。它还检查PID是否已被另一个进程重用,在这种情况下返回False。

s.is_running()

在这里插入图片描述

6. 父进程对象:parent()

预先返回父进程作为进程对象,检查PID是否已被重用。如果没有父节点,则返回None。

s.parent()

在这里插入图片描述

7. 父进程pid :ppid()

进程父PID。在Windows上,返回值在第一次调用之后缓存。

s.ppid()

在这里插入图片描述

8. 进行执行路径:exe()

进程作为绝对路径执行。也可以是空字符串。返回值在第一次调用后缓存。

s.exe()

在这里插入图片描述

9. 调用进程的命令:cmdline()

调用此进程的命令行

s.cmdline()

在这里插入图片描述

10. 进程工作路径:cwd()

将当前工作目录处理为绝对路径。

s.cwd()

在这里插入图片描述

11. 进程创建时间:create_time()

s.create_time()

在这里插入图片描述

12. 使用进程的用户名:username()

拥有流程的用户的名称。在UNIX上,这是通过使用real process uid计算的。

s.username()

在这里插入图片描述

13. 进程优先级:nice()

获取或者设置进程的优先级,value值就是需要设置的优先级,默认为None,是获取当前进程的优先级

def nice(self, value=None):
     """Get or set process niceness (priority)."""
     if value is None:
         return self._proc.nice_get()
     else:
         if not self.is_running():
             raise NoSuchProcess(self.pid, self._name)
         self._proc.nice_set(value)
s.nice()

在这里插入图片描述

14. 进程有关的终端:terminal()

与此进程关联的终端(如果有的话),否则为None。

s.terminal()

在这里插入图片描述

15. 文件描述符:num_fds()

返回此进程打开的文件描述符的数量(仅POSIX)。

 s.num_fds()

在这里插入图片描述

16. 进程I/O数据统计

返回进程I/O统计信息作为(read_count、write_count、read_bytes、write_bytes) namedtuple。这些是执行的读/写调用的数量和进程读取和写入的字节数。

s.io_counters()

在这里插入图片描述

17. 进程I/O优先级:

获取或设置进程I/O的良好性(优先级)。在Linux上,ioclass是ioprio_class_常量之一。value是一个从0到7的数。值越高,进程的I/O优先级越低。在Windows上只使用ioclass*,它可以被设置为2(正常)、1(低)或0(非常低)。只适用于Linux和Windows > Vista。

def ionice(self, ioclass=None, value=None):
    if ioclass is None:
         if value is not None:
             raise ValueError("'ioclass' argument must be specified")
         return self._proc.ionice_get()
     else:
         return self._proc.ionice_set(ioclass, value)
 s.ionice()

在这里插入图片描述

18. 进程运行在哪个CPU上:cpu_num()

返回该进程当前运行在哪个CPU上。返回的数字应该<= psutil.cpu_count()和< = len (psutil.cpu_percent (percpu = True))。它可以与psutil.cpu_percent(percpu=True)结合使用,观察分布在cpu上的系统工作负载。

s.cpu_num()

在这里插入图片描述

19. 进程环境变量:environ()

将过程的环境变量作为dict。注意:这可能不反映流程启动后所做的更改。

s.environ()

在这里插入图片描述

20. 进程使用的线程数:num_threads()

返回此进程使用的线程数。

s.num_threads()

在这里插入图片描述

21. 当前进程的子进程:children()

 s.children()

在这里插入图片描述

22. 当前进程CPU利用率:cpu_percent()

返回一个浮点数,该浮点数表示当前进程CPU利用率的百分比

s.cpu_percent()

在这里插入图片描述

23. 进程信息:cpu_times()

返回一个(user, system, children_user, children_system)元组,表示累积的进程时间,单位为秒。这类似于os.times(),但是是针对每个进程。在macOS和Windows上,children_user和children_system总是设置为0。

s.cpu_times()

在这里插入图片描述

24. 进程内存信息:memory_info()

返回一个带有变量字段的元组,这些变量字段取决于平台,表示关于进程的内存信息。所有plaforms上的“可移植”字段都是“rss”和“vms”。所有数字都用字节表示。

s.memory_info()

在这里插入图片描述

25. 进程内存占比:memory_persent()

将进程内存与整个物理系统内存进行比较,并计算进程内存利用率的百分比。memtype参数是一个字符串,它指示您希望与哪种进程内存类型进行比较(默认为“rss”)。可用字符串列表如下:> > > psutil.Process () .memory_info ._fields ()(“rss”、“虚拟机”,“共享”,“文本”,“自由”、“数据”、“脏”,“航空母舰”,pss)

s.memory_persent()

在这里插入图片描述

26. 进程打开的文件:open_files()

s.open_files()

在这里插入图片描述

27. 进程打开的套接字连接:connections()

返回进程打开的套接字连接的列表(fd、family、type、laddr、raddr、status)名元组。匹配以下条件的连接的kind参数过滤器:
在这里插入图片描述

s.connections()

28. 暂停进程PID,查看是否被重用:suspend()

使用SIGSTOP暂停进程执行,预先检查PID是否已被重用。在Windows上,这将不会挂起所有进程线程。

29. 恢复进程:resume()

使用SIGCONT预先检查PID是否已被重用,恢复进程执行。在Windows上,这可以恢复所有进程线程。

30. 终止进程:terminate()

使用SIGTERM提前终止进程,检查PID是否已被重用。在Windows上,这是kill()的别名。

31. 终止进程:kill()

使用SIGKILL预先终止当前进程,检查PID是否已被重用。

32. 等待进程终止:wait()

等待进程终止,如果进程是os.getpid()的子进程,也返回它的退出代码,否则为None。如果进程已经终止,则立即返回None,而不是引发NoSuchProcess。如果指定了timeout(以秒为单位),并且进程仍然是活着提高TimeoutExpired。要等待多个进程,可以使用psutil.wait_procs()。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/133205.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • idea如何打包war包_idea怎么导入war包

    idea如何打包war包_idea怎么导入war包本文分四个步骤进行讲述步骤一、打开ProjectStructure步骤二、增加打包配置(包括项目、打包类型、导出路径等等)步骤三、修改war包配置步骤四、打包步骤一、打开ProjectStructure打开idea开发工具,在File下找到ProjectStructure…(注意:低版本的idea在Nevigate目录下找)步骤二、增加打包配置(包括项目、打包类型、导出路径等…

    2022年10月3日
    2
  • 经典欧美电影推荐

    经典欧美电影推荐

    2021年5月4日
    93
  • 经典分页样式

    经典分页样式$pagenum=@ceil($count/$perpage1);if($page!=0){$page_jian=$page-1;$page_home.="<ahref=&#39

    2022年7月1日
    19
  • squid反向代理

    squid反向代理

    2021年5月28日
    111
  • vdbench和fio测试磁盘性能的对比总结

    vdbench和fio测试磁盘性能的对比总结vdbench和fio测试磁盘性能的对比总结一、安装1、安装vdbench,首先安装java:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html               其次下载vdbench安装包并进行安装:http://pan.bai…

    2022年5月19日
    180
  • DFA算法简单理解实现

    背景:因为最近项目要使用到敏感词过滤服务,在网上了解到dfa实现这个功能性能还不错,特此学习了一下1.什么是DFA算法引用简书作者:浪人与酒丶的解释原文链接:https://www.jianshu.com/p/c67f917c9363DFA全称为:DeterministicFiniteAutomaton,即确定有穷自动机。其特征为:有一个有限状态集合和一些从一个状态通向另一个状态的边,每条边上标记有一个符号,其中一个状态是初态,某些状态是终态。但不同于不确定的有限自动机,DFA中不.

    2022年4月8日
    41

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号