sinat_bond 2017-08-24 13:58 采纳率: 25%
浏览 851
已采纳

关于安卓中主线程代码很多的问题怎么解决?

现在有个场景,我的安卓主线程中写了很多代码,然后主线程里面所有涉及耗时操作的都放到了子线程中。反正就是主线程代码很多,有时候造成更新ui的时候会卡一下,请问这种情况怎么解决,就是有没有想adapter那样,有个notedatachanger那样的方法,在大量代码中,遇到更新ui的能够及时刷新我的界面

  • 写回答

2条回答 默认 最新

  • xcc410922911 2017-08-25 09:05
    关注

    题主应该对线程的概念还没有了解很准确。除了耗时操作需要放在异步线程,其他的关于UI和数据逻辑处理部分都是在主线程里处理的。无论你懂不懂哪些逻辑应该放在工作线程(子线程)还是主线程(UI线程),系统都会帮你检查,所以你的程序没有崩溃,说明你并没有操作出错。在这里我推断一下,题主是不是觉得主线程里逻辑比较臃肿,代码过长,怕运行时间过长导致页面刷新慢?当然不会。导致屏幕卡顿,是因为子线程中的任务还没有结束,或者子线程任务执行较慢,从而影响下行逻辑的处理,才导致整个页面看似变慢。问题还是出在逻辑上,不在于代码有多少。你可以去看看Android源码,一个组件可能会有3000多行代码,为何就不会卡顿?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突