REAPERを終了させてもタスクに残るreaper_host32.exeを自動で終了する
カテゴリー:
未分類
閲覧数:7,858 回
皆さん御機嫌よう。まいまいです。
備忘録的記事です。
何が起きていたのか
REAPERで作業し、REAPERを閉じたあとで、関連プロセスのreaper_host32.exeがキルされずに残り、結構な割合のCPUを使い続けていた。
これまでの解決法(案)
https://ytpmv.info/Kill-reaperhost32exe/
以前の記事で書いたreaperhost32.exeをキルするスクリプト。プロセスが居残っている時にこれを手動で実行しキルしていた。しかしやり忘れたり確認していなかったりで長時間CPUを使い続ける状態になることが多かった。
今回考えた解決法
上の記事にあるスクリプトを改良し、REAPERが起動されていない時にreaper_host32.exeが存在する時にreaper_host32.exeをキルするスクリプトを、タスクスケジューラで定期実行。
import psutil def main(): reaperhost32 = reaper = 0 for proc in psutil.process_iter(['pid', 'name']): if "reaper_host32" in str(proc.info["name"]): reaperhost32 = 1 p = psutil.Process(proc.info["pid"]) if "reaper.exe" in str(proc.info["name"]): reaper = 1 if reaperhost32 == 1 and reaper != 1: p.kill() if __name__ == "__main__": main()
ちゃんと問題が起こらないか見て確認してから実行すること。損害が起きても責任は負いませんので。
ツイート
コメントする?