Как я могу заставить свой дочерний процесс завершить родительский процесс?
Я думал что-то вроде ...
Ребенок получает PID родительского процесса и завершает родительское действие, используя psutil
Вот мой код
from multiprocessing import Process, Value
import keyboard
import sys
def KeyboardScan(v):
Paused = False
while True:
if keyboard.is_pressed('x'):
v.value = 1
print("Child Terminate")
sys.exit()
#Child process's code
if __name__ == "__main__":
val = Value('i', 0)
p = Process(target=KeyboardScan, args=(val,))
p.start()
#Parent process's code
Поэтому, если нажата клавиша x
, дочерний элемент должен завершить родительский процесс и сам себя.
В этом коде value
существует только потому, что изначально в моем родительском процессе был цикл while для проверки значения. Если значение равно 1, оно выполняет sys.exit()
в родительском процессе.
Но я пытаюсь избежать использования этого метода.
Есть предложения?