Windows
 Computer >> コンピューター >  >> システム >> Windows

Windows 11/10で.NETランタイム最適化サービス(mscorsvw.exe)のCPU使用率が高くなる問題を解決する方法

Windows 11/10のPCで、.NETランタイム最適化サービス(mscorsvw.exe)によるCPU・GPU・ディスク使用率が100%または異常に高くなる現象に悩まされていませんか?この記事では、その原因と具体的な解決策をわかりやすく解説します。

.NETランタイム最適化サービスがCPU使用率を高くする原因は?

最も一般的な原因は、関連プロセスであるmscorsvw.exeがバックグラウンドで.NETアセンブリの事前コンパイルを行っていることです。この処理は一時的なもので、完了すればプロセスは自動的に終了します。ただし、以下のような要因で長時間高負荷が続くケースもあります。

  • .NETランタイム最適化の処理が遅い
  • PC上で競合するプログラムやマルウェアが動作している
  • .NETランタイム最適化のデータが破損している

.NETランタイム最適化サービスの高いCPU使用率を修正する方法

CPU使用率が高い状態が続く場合は、以下の方法を順番に試してみてください。

  1. タスクマネージャーでmscorsvw.exeプロセスを終了させる
  2. マルウェアスキャンを実行する
  3. ngen.exeで.NETランタイム最適化サービスを最適化する
  4. Microsoft公式スクリプトを使用する
  5. NVIDIA Telemetryサービスを再起動する

それでは、各方法の詳細を見ていきましょう。

1. タスクマネージャーでmscorsvw.exeプロセスを終了する

タスクマネージャーを開き、「詳細」タブを選択します。一覧からmscorsvw.exeを探して右クリックし、「プロセスツリーの終了」を選択してください。これにより、一時的にCPU負荷を下げることができます。

2. マルウェアスキャンを実行する

正規のmscorsvw.exeファイルは、以下の場所に存在します。

C:\Windows\Microsoft.NET\Framework\

または

C:\Windows\Microsoft.NET\Framework64

もし別の場所に同じ名前のファイルが見つかった場合、それはマルウェアの可能性があります。PCに潜むマルウェアが、.NETランタイム最適化サービスの高CPU使用率の原因となっていることもあります。ウイルス対策ソフトやアンチマルウェアソフトでPC全体をスキャンし、検出された脅威を駆除しましょう。

また、ファイルを右クリックして「プロパティ」を開き、デジタル署名などの情報を確認することも有効です。

3. ngen.exeで.NETランタイム最適化サービスを最適化する

Windows標準搭載のツールngen.exeを使うと、.NETランタイム最適化のパフォーマンスを改善できます。コマンドプロンプトから実行します。

手順は以下の通りです。まずスタートメニューで「cmd」と検索し、表示された「コマンドプロンプト」を右クリックして「管理者として実行」を選択します。

32ビット版Windowsの場合は、次のコマンドを入力します。

cd C:\Windows\Microsoft.NET\Framework\v4.0.30319

64ビット版Windowsの場合は、次のコマンドを入力します。

cd C:\Windows\Microsoft.NET\Framework64\v4.0.30319

続いて、以下のコマンドでngen.exeを実行します。

ngen.exe executequeueditems

このコマンドにより、保留中のコンパイル処理が優先的に実行され、バックグラウンドでの高CPU使用率の問題が解消されます。

4. Microsoft公式スクリプトを使用する

この方法はngen.exeと同様の処理を行いますが、Microsoftが公開している公式スクリプトを使う点が特徴です。GitHubからスクリプトをダウンロードしてください。ページ上部の「Raw」ボタンをクリックし、ファイルを.wsf形式で保存します。保存した.wsfファイルをPC上で実行すれば、コンパイル作業が高速化されます。

5. NVIDIA Telemetryサービスを再起動する

NVIDIA Telemetryサービスを再起動することでも問題が解決することがあります。再起動によって破損したデータが修復され、.NETランタイム最適化との競合が解消されるためです。実際に同じ問題を抱えていた多くのユーザーに効果があった対処法です。

「ファイル名を指定して実行」(Windowsキー + R)を開き、「Services.msc」と入力してEnterキーを押します。サービス一覧から「NVIDIA Telemetry Container」を探してダブルクリックします。開いたウィンドウでまず「停止」をクリックし、その後「開始」をクリックしてサービスを再起動してください。

以上が、.NETランタイム最適化サービスによる高いCPU使用率を修正するための主な方法です。

よくある質問

.NETランタイム最適化サービスの高いCPU使用率はどうやって直せばいいですか?

マルウェアスキャンの実行、ngen.exeによる最適化、Microsoft公式スクリプトの利用、NVIDIA Telemetryサービスの再起動など、本記事で紹介した方法を試してみてください。

.NETランタイム最適化サービスを無効化しても大丈夫ですか?

.NETランタイム最適化サービスは、Windowsや.NETアプリケーションの起動速度を向上させる重要な役割を担っています。無効化するとPCのパフォーマンスが低下する可能性があります。無効化するかどうかは自己判断となりますが、基本的には有効のままにしておくことをおすすめします。

  1. 【Windows 10】.NET ランタイム最適化サービスのCPU使用率が高くなる問題を解決する4つの方法

    アプリケーションやバックグラウンドのシステムプロセスが異常に大量のシステムリソースを消費していることに気づくことは、よくあることです。プロセスによるリソースの過剰使用は、他の操作を大幅に遅延させ、PC全体を重くしてしまうだけでなく、最悪の場合システムがクラッシュすることもあります。本記事では、.NET ランタイム最適化サービス(mscorsvw.exe)によるCPU使用率の高騰という問題に焦点を当て、その原因と許容範囲まで戻すための具体的な対処法を詳しく解説します。 Windows 10で.NET ランタイム最適化サービスの高いCPU使用率を修正する方法 ご存じの通り、.NET Framew

  2. Windows 10/11でCOMサロゲートのCPU使用率が高くなる問題を解決する方法

    タスク マネージャーを開いたら、「COMサロゲート」が高いCPU使用率を占めていて驚いたことはありませんか?COMサロゲート(dllhost.exe)は「Component Object Model(コンポーネント オブジェクト モデル)」の略称で、画像や動画などのマルチメディアファイルを処理してサムネイルを生成する、Windowsの正規プロセスです。ただし、この名前を悪用したマルウェアに偽装されているケースもあるため、油断はできません。正規のCOMサロゲートは1993年にMicrosoftによって開発された仕組みで、開発者が複数のプログラミング言語を使ってCOMオブジェクトを作成できるように