为什么我的.net应用程序在重启机器后启动速度非常慢?

时间:2011-05-18 09:30:10

标签: c# .net wpf xaml cold-start

有人知道为什么机器重启后启动.net应用程序的速度非常慢(即冷启动)?

在谷歌研究后,我发现了加速它的一些线索,即

  1. 合并程序集
  2. 设置资源语言
  3. NGEN
  4. GAC安装等
  5. 这是否足以使我的.net应用程序更快或其他任何东西在那里我不知道?

4 个答案:

答案 0 :(得分:4)

另一个原因可能是Authenticode签名的程序集而没有Internet连接。例如,请参阅Why are signed assemblies slow to load?WPF application slow on startup

答案 1 :(得分:2)

您可以使用ProcMon from SysInternals在启动期间配置您的应用。这将使用时间戳记录所有注册表/文件访问。它可能会指向一个有延迟的区域。

此外,冷启动时,您的机器是否有大量光盘访问权限?你的病毒扫描程序是否在启动时进行全面扫描?

答案 2 :(得分:0)

如果您从硬盘驱动器中提取大量文件,那么您的系统尚未加载它们。这可能是启动缓慢的原因。

此外,如果您没有给系统足够的时间启动,它仍然可以同时加载其他应用程序。

答案 3 :(得分:0)

正如其他人所说,您的计算机可能在启动后的最初几分钟内仍在加载其他应用程序。您的硬盘(最慢的组件之一)正忙于尝试加载其他应用程序及其各自的数据。

如果您的计算机上有第二个磁盘,请尝试在第二个磁盘上安装您的应用程序。如果第二个磁盘在此期间通常处于空闲状态,我认为该应用程序启动速度会更快。