当前位置: 首页 > news >正文

【安卓基础】-- 消息机制 Handler

目录

  • 消息机制 Handler
    • 面试问题

消息机制 Handler

对handler机制的基本作用、用法、时序流程进行介绍,针对handler机制中的内存泄漏问题讲解:一篇读懂Android Handler机制
Android-Handler机制详解
全面解析 | Android之Handler机制

需要掌握的:

  1. handler机制的核心目的,基本类,基本用法,基本时序流程?
  2. handler机制中容易出的内存泄漏问题是什么?怎么解决?
  3. messageQueue的真实数据结构是什么?不同的send一条数据的方法对应的数据结构操作的区别是啥?

面试问题

Handler的实现原理?
子线程中能不能直接new一个Handler,为什么主线程可以?
主线程的Looper第一次调用loop方法,什么时候,哪个类?
Handler导致的内存泄露原因及其解决方案?
一个线程可以有几个Handler,几个Looper,几个MessageQueue对象?
Message对象创建的方式有哪些 & 区别?
Message.obtain()怎么维护消息池的?
Handler 有哪些发送消息的方法?
Handler的post与sendMessage的区别和应用场景?
handler postDealy后消息队列有什么变化,假设先 postDelay 10s, 再postDelay 1s, 怎么处理这2条消息?
MessageQueue是什么数据结构?
Handler怎么做到的一个线程对应一个Looper,如何保证只有一个MessageQueue? ThreadLocal在Handler机制中的作用?
HandlerThread是什么 & 好处 &原理 & 使用场景?
IdleHandler及其使用场景?
消息屏障,同步屏障机制?
子线程能不能更新UI?为什么Android系统不建议子线程访问UI?
Android中为什么主线程不会因为Looper.loop()里的死循环卡死?
MessageQueue# next 在没有消息的时候会阻塞,如何恢复?
Handler消息机制中,一个looper是如何区分多个Handler的?
当Activity有多个Handler的时候,怎么样区分当前消息由哪个Handler处理?
处理message的时候怎么知道是去哪个callback处理的?
Looper.quit/quitSafely的区别?
通过Handler如何实现线程的切换?
Handler 如何与 Looper 关联的?
Looper 如何与 Thread 关联的?
Looper.loop()源码?
MessageQueue的enqueueMessage()方法如何进行线程同步的?
MessageQueue的next()方法内部原理?
子线程中是否可以用MainLooper去创建Handler,Looper和Handler是否一定处于一个线程?
ANR和Handler的联系?

http://www.lryc.cn/news/360850.html

相关文章:

  • Optional 类
  • 自动微分技术在 AI for science 中的应用
  • ASM OMF single-file creation form 重命名
  • VGGNet
  • SpringMVC:转发和重定向
  • 961操作系统知识总结
  • 电脑死机问题排查
  • 百度地图1
  • Ubuntu 24.04 LTS 安装Docker
  • 【架构设计】Java如何利用AOP实现幂等操作,防止客户端重复操作
  • 笔记:美团的测试
  • 【30天精通Prometheus:一站式监控实战指南】第15天:ipmi_exporter从入门到实战:安装、配置详解与生产环境搭建指南,超详细
  • STM32F103借助ESP8266连接网络
  • Feature Manipulation for DDPM based Change Detection
  • 第十三届蓝桥杯国赛大学B组填空题(c++)
  • conda源不能用了的问题
  • 【C#】自定义List排序规则的两种方式
  • ANAH数据集- 大模型幻觉细粒度评估工具
  • AI前沿技术探索:智能化浪潮下的创新与应用
  • JVM类加载过程
  • 如何安装ansible
  • html+CSS+js部分基础运用11
  • 6,串口编程———通过串口助手发送数据,控制led亮灭
  • 【java】【python】leetcode刷题记录--栈与队列
  • java并发常见问题
  • 联芸科技偏高的关联交易:业绩波动性明显,海康威视曾拥有一票否决
  • hexo init命令报错:Error: EPERM: operation not permitted, mkdir ‘D:\‘
  • day-37 最大正方形
  • springboot 3.3版本 类数据共享(CDS)提升启动速度 使用方法+Docker打包代码
  • Django 目录