由于InitializeComponent(),我有一个具有完整GUI的程序,大约需要750毫秒才能加载。经过一些研究,似乎有一些技术可以缩短.NET遍历InitializeComponent部分的时间。这些包括:

1:使用NGen或类似的软件。

2:使用多线程,如Speed-optimise Windows Forms application所示

3:其他技术,例如在添加控件属性之前设置控件属性,如Optimising InitializeComponent (takes 1 second!)所示。

不幸的是(1)仅使我的案例改进了大约20%,(2)和(3)的实现非常耗时,并且牺牲了完整的GUI设计人员的便利性。

是否有任何自动化解决方案可以直接获取源代码,并生成更短,更有效的InitializeComponent()

最佳答案

对于Windows Forms应用程序,实际上750毫秒的启动时间是相当不错的。除非您想花无数小时只是为了再获得20%的收入,否则请集中精力为用户提供便利。

对此我非常怀疑是否有自动化的解决方案,对于一个工具来说,很难猜测出设计中不需要什么是非常困难的。

关于c# - 自动优化Windows窗体InitializeComponent的性能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7504109/

10-12 19:03