プールオブジェクトのclose()
メソッドを使用してプールワーカーを正常に停止したいのですが、terminate()
は10秒後に実行を終了しません。タイムアウトでマルチスレッドスレッドプールが閉じます
started_at = int(time.time())
p.close() # this is blocking
if (int(time.time()) - started_at >= 10):
p.terminate()
このようなものです。何か案が? :)
私はまた、スレッドにSIGTERM
を送信することについて考えましたが、それらは同じpidを共有していますので、これを行うことはできません。
申し訳ありませんが、それは私の場合はThreadPoolのです。それを固定する –