请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

主线程开启线程做耗时操作也会造成ANR,这个怎么说?开启了子线程怎么还会造成ANR?

正在回答 回答被采纳积分+3

2回答

不再等待 2017-06-05 10:14:49

+1

6:23,原话是Thread要提高优先级,要不然就和主线程是一样的优先级,会出现ANR

这里是错误的(不过优先级确实都是5)


另外,这一节根本就没有讲到什么重点,视频中对于如何解决ANR,讲的其实是如何预防ANR(正常来讲也不会出现这么低级的错误)

但是如果出现了ANR,并且也没有出现那几种问题,需要从/data/anr/traces.txt文件分析

导出traces.txt到当前目录

adb pull /data/anr/traces.txt .

通过分析这个文件可以找出ANR的原因,比如使用synchronized时导致死锁而引发的ANR等,《Android开发艺术探索》有讲到


希望后面能加上这个部分

2 回复 有任何疑惑可以回复我~
  • 多谢分享,我就觉得老师说得不能理解,不应该要降低优先级么,怎么成要提高了。
    回复 有任何疑惑可以回复我~ 2017-06-11 23:18:58
qq_唐杰_0 2017-06-01 14:55:09

你有具体代码么?鬼知道你怎么使用的

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信