2016-12-16 3 views
1

Wie kann ich ein Programm von einem Kindprozess schließen? Für exanple:Schließen eines laufenden Programms von einem Prozess

import easygui 
import multiprocessing 

def func(): 
    reply=easygui.buttonbox("start?",image="F:\project\phonber.png",choices=['yes','no']) 
    if reply=="yes": 
     exit_option() 


if __name__=='__main__': 
    p=multiprocessing.Process(target=func,args=()) 
    t=p.start() 
    while True: 
     None 

Gibt es eine Möglichkeit, die exit_option() auszuführen?

Antwort

1

Ihre vergessen haben, um tatsächlich die Funktion aufrufen:

import easygui 
import multiprocessing 

def func(): 
    reply=easygui.buttonbox("start?",image="F:\project\phonber.png",choices=['yes','no']) 
    if reply=="yes": 
     exit_option() 

func() 


if __name__=='__main__': 
    p=multiprocessing.Process(target=func,args=()) 
    t=p.start() 
    while True: 
     None 

Dann, um tatsächlich einen laufenden Prozess zu töten gibt es natürlich viele Möglichkeiten. Die offensichtlichsten davon sind psutil ihre kill oder terminate Methode, oder os ihre Kill-Methode. Beide wie gezeigt here.

Verwandte Themen