ngen.exe 持续占用 CPU

ngen.exe 持续占用 CPU

我最近安装了 Windows 7。这是一次全新安装(即不是从其他版本的 Windows 升级而来),但我安装了一些其他程序。所有主流应用程序 - 没有什么奇怪的。

从那时起,我的 CPU 使用率一直徘徊在 50% 左右。

任务管理器显示 ngen.exe 是罪魁祸首。这不是一个长期运行的任务:我可以看到它每秒至少获得一次新的 PID,所以我猜有什么东西在不断触发它。

它总是这样做,即使我没有运行任何应用程序。

还有人见过这种情况吗?我该如何找出导致这种情况的原因?

答案1

根据 Isxek 的建议,我使用 Process Explorer 查看发生了什么。我发现了以下内容:

在此处输入图片描述

正在结束的进程以红色突出显示;刚刚开始的进程以绿色突出显示。这表明 ngen.exe 不断结束并重新启动。从顶部的图表中您可以看到它每次运行大约一秒钟。

正如 Jim B 所说,netfxupdate.exe 正在通过 .NET 框架运行。我的已经运行了几个星期,所以出于某种原因,它似乎卡在了某个地方,没有取得任何进展。

使用 regedit,我找到了每次启动 PC 时启动 netfxupdate.exe 的条目:

在此处输入图片描述

由于某种原因,它似乎卡在了 .NET 1.1 库上。我是一名 .NET 开发人员,我的一些代码在 .NET 1.1 上运行。一切似乎都运行正常,所以我从注册表中删除了此条目并重新启动了我的计算机。

已经过去了几天,没有任何问题(即使是针对 .NET 1.1 进行开发),所以我对这个解决方案很满意。

答案2

NGEN 是 dotnet 框架的本机代码生成器。它将作为后台任务运行,直到生成本机程序集

答案3

文件ngen.exeProcessLibrary.com。我在我使用的 Windows 7 笔记本电脑中搜索了它,但找不到它。

你可以使用进程探索器以确定它是否是来自 Microsoft 的合法文件。当您看到 ngen.exe 时,右键单击它,选择“属性”,然后单击“验证”按钮。您应该会看到类似以下内容的内容(图片为svchost.exe):

在此处输入图片描述

如果未注册为已验证,您可能需要尝试此处给出的建议:如何从我的电脑中删除恶意间谍软件、恶意软件、广告软件、病毒、木马或 rootkit?

答案4

我也遇到过这个问题。但答案是teedyay我没有帮助。有帮助的解决方案是禁用自动更新。请参阅https://superuser.com/a/502049/201171

相关内容