大数据量 与 UI交互时的处理 总结与心得

【以下均在主线程中操作时】
1、UI直接操作,数据量较大时,直接使用UI会非常慢
2、数据驱动操作,数据量较大时,数据与UI的交互效率相比“1”提升明显


总结:但以上这两种操作  都会“较长时间”占用主线程,导致UI假死现象



【解决办法,以下两点并用】
1、异步,使用子线程处理耗时业务逻辑,避免因主线程过忙而导致UI假死现象
2、数据驱动,第一:可以提升数据与UI的交互效率(本质上交给WPF引擎去处理了);第二:没有跨线程问题。
例如:数据ObservableCollection.add(item)          效率远远高于         UI控件DataGrid.Items.add(item)


总结:异步的特点是,速度可能比同步还要慢,但主线程不假死;而针对慢的缺点——>我们可以采取“主线程等待进度条”的方式来缓解用户等待时间较长的压力




转载于:https://www.cnblogs.com/changbaishan/p/10030674.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值