メモリを大幅に使っているプロセスがわからない場合はハンドル数を確認する

ALL
スポンサーリンク

Windowsがメモリを大量に消費していたのですが、各プロセスのメモリ使用量を見てもどれが原因かわかりませんでしたが、プロセスがオープンしているハンドル数で特定できました。

発端は、下のように、メモリが大幅に使用されていることに気づいたことでした。
メモリ使用量が15.9GBで物理メモリをほぼ使いきっています。
コミット済みの所を見ると、23.7GBとなっていて、このマシンの物理メモリ量16GBを大幅に超えています。

タスクマネージャやリソースモニタで、各プロセスのメモリ使用量を確認しましたが、どう見ても各プロセスのメモリの合計がメモリ使用量に達しません。
一体何がメモリを喰っているのか・・

ふと、タスクマネージャの列の表示にハンドル数を加えてみると、異常に値が大きいプロセスがありました。
このプロセス synergyd.exe は、マウス・キーボード共有ソフト Synergy ですね。

synergyd.exe を右クリックして、[タスクの終了]で終了させると、下の画面のように、メモリ使用量ががくんと減りました!

メモリ消費の原因は、ハンドルの異常なオープン数でした。

さて、タスクマネージャでプロセスがオープンしているハンドル数を確認する方法です。
タスクマネージャ の詳細タブで、表のタイトル行(名前、状態、CPUとかの表示の行)で右クリックします。
出てきたメニューで[列の選択] を押します。

列の選択画面で、ハンドル数にチェックします。
これで、表示される列にハンドル数が追加されます。

コメント