terminate 关闭进程,不会立即关闭,有个等着操作系统去关闭这个进程的时间,所以is_alive立刻查看的结果可能还是存活,但是稍微等一会,就被关掉了
# coding:utf-8 import time from multiprocessing import Process class MyProcess(Process): def run(self): print("子进程开始.") time.sleep(5) print("子进程结束.") if __name__ == '__main__': p = MyProcess() p.start() time.sleep(1) p.terminate() print("is_alive:", p.is_alive()) time.sleep(0.01) print("is_alive:", p.is_alive())
执行结果: # 子进程开始. # is_alive: True # is_alive: False