1.更新的bug列表并不全
通过bug修正列表及发布的消息,可以看到up1修正了很多bug,正如我所说,有些bug并没有写到发布的bug列表中,如TextPrompt不显示的问题。
2.解决了对象释放的问题
基于XE7,我做了测试代码,也是我想象中,开发一个实际的项目要用到很多Form,并且是用到时再建立,需要的话,用完就释放掉。为了这个想法,我测试了很长时间,也看了相关的代码,无耐,实际的结果让人颓丧。问题就是建立一个Form,要耗时300毫秒,再复杂点的窗口则要更多时间。就算是在200-300毫秒,其用户体验也达不到java做的android应用了!
为什么会这么慢呢?摸索出以下几个问题:
a.日历与日期控件耗时;
b.DisposeOf不能完全释放内存;
如下面的代码:
for i:=1 to 1000 do begin
Form1:=TForm1.Create(Application);
Form1.DisposeOf;
end;
上面的代码在xe7中,建立一个窗口然后释放,如果循环1000次,内存占用300M,再循环下去,直到应用崩溃。只有退出应用,才会释放内存。
这对我来说是个严重的问题,现在在xe7 up1中得到了解决!运行前期的测试代码,内存稳定在67.9M!即在运行上面这个代码的时候,内存不会变化,一直是67.9M.
这是一个让人兴奋的结果。
3.建立窗口的速度提升了10倍
原来的代码,建立一个窗口的速度是300毫秒,现在只到40毫秒左右!有图为证,这是建立1000个Form后,每个建立耗时。你会看到,每次建立的耗时不再增长。
4.内存占用
这是建立了1000个窗口后内存的占用情况:65.2MB
再运行一次,内存没变化!!!
5.FMX控件效率提升
通过运行xe7带的Controls例子,运行起来,基本同原生应用的效率一样,在上个版本中,明显有卡顿,现在没有这个情况了,这可是个把所有fmx可视控件都放到一个Form上,很极端了!你也可以在这个目录找到并运行一下。
C:\Program Files (x86)\Embarcadero\Studio\15.0\Samples\Object Pascal\Mobile Samples\User Interface\Controls
先写到这里,等我再继续测试并分享!