2016-12-16 3 views
1

Comment fermer un programme à partir d'un processus fils? Pour exanple:Fermeture d'un programme en cours d'exécution à partir d'un processus

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 

Est-il possible d'exécuter le exit_option()?

Répondre

1

Votre oublié d'appeler réellement la fonction:

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 

Alors, pour tuer en fait un processus en cours d'exécution, il y a, bien sûr, beaucoup d'options. Les plus évidents étant psutil sa méthode kill ou terminate, ou os sa méthode kill. Les deux comme indiqué here.