面试题收集

来源:互联网 发布:阿里云是阿里巴巴的吗 编辑:程序博客网 时间:2024/06/08 16:14

感觉可以收集的有好的回答的面试题

 1、Android中为什么主线程不会因为Looper.loop()里的死循环卡死?

答:线程是一段可执行的代码,当可执行代码执行完成后,线程生命周期便终止,线程退出。对于主线程,我们是绝不希望运行一段时间后自己就退出,那么如何保证能一直存活呢?简单做法就是可执行代码是能一直执行下去的,死循环便能保证不会被退出,例如,Binder线程也是采用死循环的方法,通过循环方式不断与Binder驱动进行读写操作,当然并非简单地死循环,无消息时会休眠。真正会卡死主线程的操作是在回调方法中onCreate()、onStart()、onResume等操作时间过长,导致掉帧,甚至发生ANR,Looper.loop()本身不会导致应用卡死。 

0 0
原创粉丝点击