0

我正在开发一个 Windows 服务,它从 sql server 获取数据并将它们以 xml 格式发送到其他一些应用程序。我使用 .NET3.5 开发。

我面临的问题是,当我在 Windows 7 操作系统机器上运行此进程时,CPU 使用率将在 2% 左右,这是预期的,但当我在 Widows server 2008 R2 VM 机器上运行相同进程时,CPU 使用率约为 95%。

我已经使用进程资源管理器分析了这个过程,我发现我的服务器 VM 机器(windows 2008 R2)的一个区别是我的窗口服务正在使用这个线程“mscorwks.dll!CoUninitializeEE+0x18cf8”。此线程正在使用更多 CPU。当我挂起这个线程时,我的进程 CPU 使用率约为 2%,并且我的进程运行正常。在我的开发机器(Windows 7)中,我没有看到这个线程。所以我认为这是导致问题的原因。

为什么这会发生在服务器机器上?如何解决这个问题?

显示这些详细信息的计算机属性:(均为 64 位操作系统)

我的开发机器配置是:Intel Core i5 2400 CPU @ 3.10GHz 3.10GHz 我的服务器机器配置是:Intel Xeon x5560 @ 2.80GHz 2.79GHz(2 个处理器)

我google了很多,但我没有找到任何有用的信息。

4

0 回答 0