WEB开发网
开发学院手机开发Windows Mobile 开发 WM性能优化的一些经验 阅读

WM性能优化的一些经验

 2010-08-22 12:53:00 来源:WEB开发网   
核心提示:昨天听黎波讲了关于SQL Server Compact 性能调校课程中,主要分析了SQL Server Compact如何优化,WM性能优化的一些经验,主要分为,在数据访问层上与表、sql语言上的一些优化,就有冲突,1对1的同步没有任何问题,这里就不再罗嗦一遍了,SQL Server Compact优化

昨天听黎波讲了关于SQL Server Compact 性能调校课程中,主要分析了SQL Server Compact如何优化。

主要分为,在数据访问层上与表、sql语言上的一些优化。这里就不再罗嗦一遍了。

SQL Server Compact优化,只是WM开发中需要优化的一部分。如何选择好不同的技术,在实际项目中来根据具体情况再分步优化,不断的改善程序的性能,才是我们所必须要关注的。

目前WM应用领域已相当广泛了,从最初的物流系统到现在的吃饭点菜,从工业领域到目前的个人家用都涉及到了。正所谓不同的领域有所需的不同要求。

我们就从WM客户端开始,一一讲述吧。

客户端上,由于使用C/S程序,从性能上来讲多数取决于设备及.net cf的版本。

另外P/Invoke的调用也相当耗费性能。我们需注意的地方就是在P/Invoke 的内部有一个LoadLibrary/FreeLibrary 对。

在调用API之前,先Load该DLL,然后再调用其API。完全用完后Free它,可以加速性能。

作为企业或公司级的应用来说,已基本没有任何问题。(毕竟界面较简单,基本都是添/删/改/查)

但是作为个人应用,比如像一些短信拦截,电话屏蔽之类的。 .net cf往往力不从心,需要调用大量的API。

另外3D类也特别不好,就象摆设一样,还是以2D图片来代替更好些。

界面上的控件建议不要太多。可以将图片之类的放入到资源文件中,这样比直接在外部访问更快些。

用using,来创建-释放对象。

在WM设备上使用SQL Server Compact,注意,该版本数据库,就是文件型数据库。用ado.net访问时,要注意一些优化。

1.用DataReader代替DataAdapter。

2.SqlCeResultSet可以非常方便的来回访问。

3.用TableDirect方式比直接用Select更快些,但只能访问单表。

4.表最好做一下索引,便于提高sql速度。

5.个人觉得能用List就用,不建议用DataSet之类,消耗性能。

SQL Server Compact同步问题。微软曾推出ADO.net Sync Service for device。虽然功能很强大。但一旦数据量大的情况,同步时间较慢,且需要相对稳定的网络环境,不适宜。

根据适当情况,如果类似于定单,则可以下完定单后,立刻调用Web Service通知服务器。

对于商品库存表之类不采用Sync同步,在于,一旦客户端较多时,每个客户端的该表都与主表不一致时,就有冲突。1对1的同步没有任何问题。多对1的同步就无法很好的解决。

1 2  下一页

Tags:WM 性能 优化

编辑录入:coldstar [复制链接] [打 印]
赞助商链接