0
這個問題涉及python中的多處理。我想在終止進程時執行一些代碼,在它終止之前更具體一些。我正在尋找一個解決方案,作爲python程序的atexit.register
。如何在python結束進程之前執行代碼?
我有一個方法工人看起來:
高清工人(): 而真: 打印( '工作') time.sleep(2) 回報
我通過運行它:
proc等於multiprocessing.Process(目標=工人,ARGS =()) proc.start()
我的目標就是TE之前執行一些額外的代碼rminating它,我做由:
proc.terminate()
沒有辦法做到這一點,因爲'process.terminate()'問操作系統殺死'SIGTERM'。所以不會執行'finally'等操作符。 –
您可以提供一個'SIGTERM'信號處理程序。請參閱https://docs.python.org/3.4/library/signal.html中的'signal.signal' –