安裝 Windows 7 SP1 後,許多用戶發現 mscorsvw.exe (NET Runtime Optimization Service) 進程長期佔用 CPU 99%,系統嚴重變慢,工作管理員無法結束進程。這是 .NET Framework 4 的 NGEN (Native Image Generator) 背景編譯機制在 SP1 更新後被觸發,需將組件預編譯為原生映像以提升後續啟動速度。理解機制、正確處理,避免誤殺系統關鍵服務。
mscorsvw.exe (Microsoft .NET Framework NGEN)。若系統尚可操作(滑鼠能動、視窗能切),不要強制結束進程。讓它跑完,後續 .NET 應用程式啟動會明顯加快。可開啟資源監視器 (Win+R → resmon) 觀察磁碟 I/O,確認仍在讀寫即表示正常工作中。
以系統管理員身分開啟命令提示字元,執行:
cd /d "C:\Windows\Microsoft.NET\Framework\v4.0.30319"
ngen.exe executequeueditems
64 位元系統另執行:
cd /d "C:\Windows\Microsoft.NET\Framework64\v4.0.30319"
ngen.exe executequeueditems
此指令強制立即處理所有排隊編譯項目,跑完即結束,CPU 佔用歸零。過程中 CPU 會滿載,建議在非工作時段執行。
services.msc。警告:停用後,.NET 4 應用程式首次啟動會即時編譯 (JIT),啟動速度明顯變慢,且每次啟動都會重複編譯。僅建議臨時緊急需釋放 CPU 時使用,事後請改回「手動」並執行策略二補齊編譯。
| 誤區 | 事實 |
|---|---|
| mscorsvw.exe 是病毒/木馬 | 簽署者為 Microsoft Corporation,路徑在 C:\Windows\Microsoft.NET\Framework\,為合法系統元件 |
| 工作管理員結束進程能解決 | 服務會自動重啟,且編譯隊列未清空,反覆出現 |
| 刪除 mscorsvw.exe 檔案 | 破壞 .NET Framework 功能,導致相依應用程式無法啟動 |
| CPU 100% 代表系統當機 | 低優先權背景進程,前景操作仍可響應,僅體感卡頓 |
msconfig、Autoruns)。tasklist /svc /fi "imagename eq svchost.exe" 查看承載服務,針對性處理。msconfig 或 Autoruns 清理非必要啟動項。mscorsvw.exe 高 CPU 是 .NET 維護機制的正常副作用,而非故障。理解原理、用 ngen executequeueditems 一鍵加速完成,比任何「優化大師」清理都來得標準、乾淨。下次遇到,別慌、別殺、別刪,跑個指令喝杯咖啡,它自己就好啦!