pythonで起動させたスレッドを殺す
pythonでサブプロセスから起動させた子を停止させて殺します。
色々調べた結果、呼んだ時のIDを指定して止めることにしました。
プログラム
[thread_test.py]
# -*- coding:utf8 -*- import time import subprocess from subprocess import Popen import os import signal cmd = "python thread_test_child.py" proc = subprocess.Popen("exec " + cmd, stdout=subprocess.PIPE, shell=True) print( "process id = %s" % proc.pid ) print(proc.stdout.readline()) os.killpg(os.getpgid(proc.pid), signal.SIGTERM)
呼び出す子プロセス
[thread_test_child.py]
print("====")
↓結果↓
process id = 22818 b'====\n' Terminated
終わり