macで色々動かしている時に、不意にプロセスが溜まりまくっていました。一気にプロセスを終了させる方法を調べたので書きおきます。
エラー終了時にゴミタスクが溜まり続ける問題
macでプログラミングをしていて、まぁ、よくエラーはいて止まりますよね。また、スケジューリングして動かしていたりした場合も、まぁ、よく気づいたらエラーはいて止まってますよね。
そんな時、PCごと重くなったり、最悪の場合全く動作しなくなったりして非常に困ります。特にしばらく放置しておいて「なんか変だな?」とみてみるとタスクに溢れていてPCごと再起動なんて目も当てられません。
アクティビティモニタからプロセスを強制終了させる
アクティビティモニタから複数選択して終了させる。ができるうちは問題ありません。
右上の検索でキーワードを選択すると、対象のプロセスを絞り込む事ができます。絞り込んだ上で複数選択して「×」ボタンを押せば消せます。
ターミナルからプロセスを強制終了させる
もうGUIで選択することがままならない時、ターミナルからプロセスを強制終了させる方がなんとかなるかもしれません。
終了には「killall」を使います。「kill」コマンドはプロセスIDを指定する必要があるため、「killall」の方がまとめて停止できて便利です。
killall chromedriver
killall Google\ Chrome
このようにプロセスにスペースなどの空白がある場合はエスケープ記号を使います。
「 (スペース)」→「\ (スペース)」と入力することでプロセスを認識してくれます。
さらに定期タスクでうわーってならないように、定期的にkillしておけば幸せになるかもしれません。
そういえば以前書いた記事が役立つかもしれません。ファイルを開くわけでもないのでcrontabに記述するだけで実行できます。
まとめ
最終的には人がチェックして不味そうならばkill→定期的にkillして可処分時間が増えた。という幸せな結末になりました。ただ、エラー吐かないように根本対策するのが普通だとは思います…
コメント