由于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/