0

我是 python 的新手,并试图了解psutil模块。我的问题是,如果有超过 1 个进程实例(例如 VLC 媒体播放器的两个实例),会psutil.kill()杀死该进程的所有实例还是仅杀死其中一个实例?

4

1 回答 1

1

No. kill是在进程对象上调用的方法,所以这是一个找到正确进程的问题。您可能会遍历它们:

for proc in psutil.process_iter():
try:
    print("{:4d} {:4d} {:s}".
          format(proc.pid, proc.ppid, proc.exe))
except psutil.AccessDenied:
    pass
except psutil.NoSuchProcess as err:
    print("****",err) 

示例异常处理是处理竞争条件 - 该过程可能会在找到它和询问它之间完成。问题是确定您希望终止的正确进程。通常,您会使用进程 IDpidcmdline. 如果您确实希望杀死所有实例,请使用exe.

于 2015-06-15T08:02:14.837 回答