【问题标题】:why my .net application horribly slow to start after the machine is rebooted?为什么我的 .net 应用程序在机器重新启动后启动速度非常慢?
【发布时间】:2011-05-18 09:30:09
【问题描述】:

有谁知道为什么在机器重新启动(即冷启动)后启动 .net 应用程序如此缓慢?

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

  1. 合并程序集
  2. 设置资源语言
  3. NGEN
  4. GAC 安装等

这是否足以让我的 .net 应用程序更快,或者我还缺少什么?

【问题讨论】:

  • - 敲,敲。 -谁在那? (长时间延迟......)-Dot Net。 :-)
  • 是什么应用,forms/WPF/Console...你怎么知道是框架启动慢?你的代码在做什么直到你的测量点?
  • @adriamn:它是一个使用 WPF 的 Windows 应用程序,也使用了表单。首先我认为这是因为我的 WPF 代码,所以我省略了我使用的大部分不必要的控件,但它仍然发生相同,我认为这不是由于我的系统配置,因为我试图通过等待大约 20 来启动我的应用程序-30 分钟

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


【解决方案1】:

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

【讨论】:

    【解决方案2】:

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

    另外,冷启动时,您的机器是否有很多磁盘访问权限?您的病毒扫描程序是否在启动时进行全面扫描?

    【讨论】:

    • 不,我在没有任何启动应用程序的情况下将它与我的普通系统一起使用,并且在系统稳定后我正在运行我的应用程序并且我面临这个问题
    【解决方案3】:

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

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

    【讨论】:

      【解决方案4】:

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

      如果您的计算机上有第二个磁盘,请尝试在第二个磁盘上安装您的应用。如果第二个磁盘在这段时间内通常是空闲的,我认为应用程序会启动得更快。

      【讨论】:

        猜你喜欢
        • 2023-04-02
        • 2011-08-16
        • 1970-01-01
        • 2014-12-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多