我有一台Server 2008 R2terminal服务器,在过去的三个月里,这个服务器的使用率非常低(一个小时一个用户,一天一次)。
突然之间,我无法理解, mscorsvw.exe (.NET Runtime Optimisation Service)已经开始消耗100%的处理器,导致各种报警和触发器closures。 这是一个重复的模式,所以下一步将要发生什么事情是相当可预测的:

有谁知道可能会导致这种情况? 我已经做了明显的(重新启动服务器),但除此之外,我是SOL。
我唯一能想到的可能是相关的是我今天早上通过WSUS批准了六个Windows Update,但是它们不是在明天上午2点之前安装(其中一些与.NET 4安全性有关)。
没有人login到服务器(除了我),即使他们,我们没有任何.NET应用程序在那里使用。
mscorsvw是一个预编译.NET二进制文件的过程。 您的更新可能触发了此活动。 至less,这正是http://blogs.msdn.com/b/davidnotario/archive/2005/04/27/412838.aspx所说的。
如果你可以运行sysinternals procmon工具,你可能会得到更多的线索。 这将告诉你mscorsvw正在打或关注什么文件,并帮助确定它是否真正专注于潜在的.NET文件。
从该网站,如果这是发生了什么事,运行
ngen.exe executequeueditems
应该通过一次运行所有内容来“清除队列”,而不是等待CPU空闲,因为看起来是在服务器上发生这种情况。 一旦完成预编译,它应该停止发生。