问题
How can I close a program from a child process? For exanple:
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
Is there a way to execute the exit_option()
?
回答1:
Your forgot to actually call the function:
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
Then, to actually kill a running process there are, of course, many options. The most obvious ones being psutil
its kill
or terminate
method, or os
its kill method. Both as shown here.
来源:https://stackoverflow.com/questions/41183390/closing-a-running-program-from-a-process