【发布时间】:2012-03-21 17:06:05
【问题描述】:
目前我可以用一个简单的 python 脚本列出我的进程:
导入操作系统 os.system("任务列表")
如果有的话,我想列出与这些进程相关的所有线程。每个进程的线程数可能就足够了。
谁能指导我在哪里可以找到这些信息。
谢谢。
【问题讨论】:
标签: python windows multithreading monitoring process
目前我可以用一个简单的 python 脚本列出我的进程:
导入操作系统 os.system("任务列表")
如果有的话,我想列出与这些进程相关的所有线程。每个进程的线程数可能就足够了。
谁能指导我在哪里可以找到这些信息。
谢谢。
【问题讨论】:
标签: python windows multithreading monitoring process
您可以使用psutil模块(download here)进行跨平台流程信息传递。
安装后,使用以下代码获取任意进程id的线程数。
import psutil
for proc in psutil.process_iter():
print proc.name+' ['+str(proc.get_num_threads())+' threads]'
【讨论】:
os.system("Tasklist") 只能在基于 Windows 的平台下工作,但 psutil 是跨平台的,可以在许多其他系统上工作。他们说“它 [psutil] 目前支持 Linux、Windows、OSX 和 FreeBSD,两者都 32 位 和 64 位,Python 版本从 2.4 到 3.3,使用单一代码库。"它在code.google.com/p/psutil/wiki/Documentation 上有非常简单的文档