Вы должны быть в состоянии уничтожить python процессов с точно таким же подходом. Конечно: Будьте осторожны! Если бы я делал это на своей машине, я бы убил некоторые процессы, которые выполняют для меня важную работу:)
Узнайте, каков ваш интерпретатор python называется. Я предполагаю, что это «python3 .exe» или «python .exe». На моей машине это 'python3'.
Будьте осторожны, чтобы ваш python скрипт не покончил с собой. Для этого вы можете проверить, что это за сценарий убийцы. Следующий пример работает для меня. Я заменил оператор proc.kill()
на print
по понятным причинам.
import psutil
import os
my_pid = os.getpid()
for proc in psutil.process_iter():
try:
# Get process name & pid from process object.
processName = proc.name()
processID = proc.pid
if proc.pid == my_pid:
print("I am not suicidal")
continue
if processName.startswith("python3"): # adapt this line to your needs
print(f"I will kill {processName}[{processID}] : {''.join(proc.cmdline())})")
# proc.kill()
except (psutil.NoSuchProcess, psutil.AccessDenied, psutil.ZombieProcess) as e:
print(e)
Вывод:
I will kill python3[11205] : python3-cimport time; time.sleep(1000))
I am not suicidal
I will kill python3[15745] : <another python job running on my machine>
Процесс Python, который просто time.sleep
был запущен мной для тестирования заранее.