您将如何使用 psutil 杀死超过持续时间的空闲进程?

How would you use psutil to kill idle processes that exceed over a duration amount of time?

我正在尝试使用 psutil 来终止一个特定的进程,当它没有被使用/很长时间没有被使用时 interacted/touched,这是我目前拥有的:

import psutil

for proc in psutil.process_iter():
    if 'Application.exe' in proc.name():
        proc.kill()

此代码仅在通过名称找到进程时才终止进程 - 我将如何使用 psutil 终止超过特定持续时间的空闲进程?

您可以使用create_time()获取进程创建时间。

您的代码应如下所示:

import psutil
import time

for proc in psutil.process_iter():
    if 'Application.exe' in proc.name():
        proc_duration = (time.time() - proc.create_time()) % 60
        if proc_duration > 25.0:
            proc.kill()

您还可以使用 psutil 获取 CPU 使用情况和其他进程数据。希望对您有所帮助!