delphi xe 之路(30)Delphi XE7 update1进步太大了

简介: <span style="background-color:rgb(255,255,255)"><span style="color:rgb(64,64,64); font-family:'Microsoft YaHei','Helvetica Neue',SimSun; font-size:14px; line-height:21px">1.更新的bug列表并不全</span><br s
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后,每个建立耗时。你会看到,每次建立的耗时不再增长。
Delphi <wbr>XE7 <wbr>update1进步太大了

4.内存占用

这是建立了1000个窗口后内存的占用情况:65.2MB
Delphi <wbr>XE7 <wbr>update1进步太大了
再运行一次,内存没变化!!!

5.FMX控件效率提升
通过运行xe7带的Controls例子,运行起来,基本同原生应用的效率一样,在上个版本中,明显有卡顿,现在没有这个情况了,这可是个把所有fmx可视控件都放到一个Form上,很极端了!你也可以在这个目录找到并运行一下。
C:\Program Files (x86)\Embarcadero\Studio\15.0\Samples\Object Pascal\Mobile Samples\User Interface\Controls
Delphi <wbr>XE7 <wbr>update1进步太大了

先写到这里,等我再继续测试并分享!
目录
相关文章
|
Java p3c 开发者
阿里java开发规范学习(附P3C IDEA插件 帮助规范的养成)
浅析 阿里巴巴 Java 开发规约 (未完成) contents 为什么要学 编程规约 P3C IDEA 插件 why-use 我们知道,一般稍微大一点的公司,都会在系统架构设计完成之后,编码工作开始之前,给出一份属于自家公司,或是自家团队给出的编码规范文...
5927 0
|
12月前
|
域名解析 JSON API
【干货满满】如何处理requests库调用API接口时的异常情况
在调用 API 时,网络波动、服务器错误、参数异常等情况难以避免。本文提供一套系统化的异常处理方案,涵盖 requests 库常见异常类型、处理策略、实战代码与最佳实践,通过分类处理、重试机制与兜底策略,提升接口调用的稳定性与可靠性。
|
Java 关系型数据库 数据库连接
简单易懂的 MyBatis 分库分表方案
本文介绍了一种基于 MyBatis 框架的数据库分库分表方案——shardino。不同于复杂插件方式,该方案通过客户端代码包装实现简便易懂的操作,显式处理分库分表逻辑,确保开发者清晰了解数据分布。项目地址:[https://github.com/pyloque/shardino](https://github.com/pyloque/shardino)。方案中,帖子表按 userId 字段 hash 分为 64 张表,平均分配到多个主从库中,配置文件管理 MySQL 组对象,支持读写分离和权重随机选择从库。代码示例展示了如何计算 partition number 并进行具体操作。
637 22
简单易懂的 MyBatis 分库分表方案
|
运维 安全 网络协议
打印机共享,错误代码0x00000709,0x0000011b等修复
本文介绍了多款打印机共享修复工具,适用于解决Windows系统连接共享打印机时出现的各种问题,例如错误代码0x0000011b、0x00000709等。内容涵盖问题原因分析、推荐工具介绍及详细修复步骤,帮助用户快速恢复打印机连接。
5067 0
|
存储 Oracle 网络协议
医学影像系统PACS源码,综合医学影像浏览、处理和诊断工作站
综合医学影像工作站,支持放射、超声等科室的DICOM标准数字影像,具备专业的影像增强处理功能,兼容PACS网络。系统特点包括全面支持DICOM标准,与各种医学成像设备连接,支持图像发送、打印及动态影像流式传输,并支持多显示器。系统功能涵盖多模态影像浏览、常规及高端影像处理、多种标注测量工具。此外,工作站还支持DICOM协议通讯、数据自动路由、光盘备份及不同图像格式输出。PACS系统基于国际标准构建,支持Windows/Linux平台,采用Oracle数据库,具备双机热备及RAID功能,确保图像质量与数据传输满足行业需求,且易于与现有HIS系统集成,支持远程DICOM传输,具有分级权限管理功能。
465 0
医学影像系统PACS源码,综合医学影像浏览、处理和诊断工作站

热门文章

最新文章