0
我正在運行Python3中的一些進程,但它們沒有被終止。這是一個MCVE問題,在Linux 3.5上運行在Linux 16.04上。我已經嘗試過使用QJoypad和Sublime3。Python3實際上並沒有處理進程
import subprocess
import time
p_joypad = subprocess.Popen(['qjoypad']) # also happens with sublime3
time.sleep(2) # wait until process starts
p_joypad.terminate() # try and kill it
p_joypad.kill() # try and kill it again
del p_joypad
os.kill(p_joypad.pid, signal.SIGTERM) # ask the OS to kill it
os.kill(p_joypad.pid, signal.SIGKILL)
# another attempt at calling and killing the process
p_joypad = subprocess.Popen(['qjoypad'], preexec_fn=os.setsid)
os.killpg(os.getpgid(p_joypad.pid), signal.SIGTERM)
input("Process is still open, baby") # hang up to verify this
起初我只是terminate()
電話,但後來我嘗試了kill()
以及從內存中清除的對象。但是,這兩個過程仍然在這之後運行。 Qjoypad不允許調用其他實例(所以我需要關閉並重新啓動我的Python3應用程序),這是非常有問題的。