我想在安装结束时执行nGen,只是为了提高应用程序第一次启动时的性能。我怎么能这么做呢?有没有一些最佳实践?是否可以确保始终与.NET框架一起安装nGen?
谢谢!
发布于 2009-05-11 16:49:50
您可以使用自定义安装程序操作生成程序集。以下链接对此进行了更详细的说明:
http://www.dotnetperls.com/ngen
我还记得关于Paint.Net的安装程序(包括.NET框架引导、预JIT等)的讨论,但我现在找不到它。如果我再次遇到这篇文章,我会编辑它的。
发布于 2009-02-06 21:57:11
首先,“是”,你可以保证如果他们安装了.Net框架,他们就拥有Ngen。你唯一需要知道的就是他们安装的是哪个版本,因为1.1和2.0是不同的。我过去所做的只是创建了一个脚本,我的安装程序在最后调用该脚本,该脚本在所有程序集上运行ngen。
发布于 2009-02-07 01:34:57
要提高启动时的感知性能,可以查看应用程序中的statics。启动应用程序时,大量的静态操作可能会导致大量的开销。
此外,考虑只将主窗体放在EXE中,而将其他所有内容放在单独的DLL中。这不仅提高了性能,而且有助于确保您将视图与数据分开。
最后,如果您在NGENing上设置,请查看有关在您的MSI中运行自定义操作的帮助。您应该能够设置一个自定义操作来执行您想要的操作。
https://stackoverflow.com/questions/522323
复制相似问题