Handler调用postDelayed()时,runnable和Handler同处于一个线程,该线程为创建Handler的线程。如果在Handler是在UI线程充创建,则在runnable中不能执行网络请求等耗时操作,否则会报NetworkOnMainThreadException异常。如果要在子线程中创建Handler,需要在方法开始和结束分别使用Looper.prepare()和Looper.loop().
postDelayed(Runnable r, long delayMillis)线程问题
最新推荐文章于 2025-03-04 14:11:03 发布
本文介绍了Handler机制在不同线程中的应用方式。当在UI线程创建Handler时,需要注意避免在runnable中执行耗时操作,以防触发主线程异常。若在子线程中使用Handler,则需通过Looper.prepare()和Looper.loop()来准备Looper。
1万+

被折叠的 条评论
为什么被折叠?



