目标
跟踪用户与之交互的实时程序。
预期输出
获取用户正在与之交互的当前进程的信息。
我做了什么
使用psutil
列出所有进程并找到使用CPU最多的进程。但它导致返回使用大多数CPU的python.exe,因为它正在计算进程。
问题
没有这种错误,还有其他方法可以完成任务吗?
或者我可以google的任何关键字都会很好。
答案 0 :(得分:1)
我想弄清楚为什么你自己的应用本身正在使用所有的CPU将是你的第一要务。 :)我的精神力量表明你在不睡觉的情况下不断地对系统进行投票。您是否考虑在枚举过程后睡半秒钟?
使用CPU指标并不是实现目标的最佳方式。你没有提到你是什么操作系统,但如果你在Windows上,那么你想要在前台跟踪窗口,因为这是用户正在与之交互的内容。通过获取前景HWND,您可以将其映射回进程ID并最终处理进程名称。不确定Mac,但我打赌这是一个等效的电话。