簡體   English   中英

Python:在無法訪問 subprocess.Popen 對象的情況下終止子進程?

[英]Python: terminate subprocess without having access to subprocess.Popen object?

我有一個腳本,我可以在其中使用subprocess模塊在 Python 中調用一個子subprocess ,如下所示:

import subprocess
process = subprocess.Popen(['python3', 'some_Python_script.py']

我希望能夠終止/終止這個進程。 但是,創建我的過程后,在我的應用我失去訪問process的對象,因此,我不能夠經常終止其作為描述在這里,使用process.kill

但是,有沒有辦法“存儲”進程的某些唯一 ID,並且以后能夠操作/終止它(如果它仍在運行)?

例如,我在想類似的事情

process = subprocess.Popen(['python3', 'some_Python_script.py']
process_ID_string = process.id
...
...
*later on*
subprocess.kill(process_id = process_ID_string)

subprocess模塊可以做到這樣的事情嗎?

import subprocess, os, signal

process = subprocess.Popen(['python3', 'some_Python_script.py']
processId = process.pid

# later on
os.kill(processId, signal.SIGTERM)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM