面试:Handler的工作原理是怎样的?handlerpost和viewpost区别?

3天前 (08-21 20:48)阅读1回复0
xxhh
xxhh
  • 管理员
  • 注册排名4
  • 经验值387425
  • 级别管理员
  • 主题77485
  • 回复0
楼主
  1. 面试:Handler的工作原理是怎样的?
  2. handlerpost和viewpost区别?
  3. springmvc中handler是什么?
  4. handler机制的原理?

面试:Handler的工作原理是怎样的?

Handler机制工作原理:

面试:Handler的工作原理是怎样的?handlerpost和viewpost区别?

Handler 工作流程基本包括 Handler、Looper、Message、MessageQueue 四个部分。但我们在日常开发中,经常都只会用到 Handler 和 Message 两个类。Message 负责消息的搭载,里面有个 target 用于标记消息,obj 用于存放内容,Handler 负责消息的分发和处理。

handlerpost和viewpost区别?

handlerpost和viewpost是两个常用的Java线程模型,它们之间最主要的区别在于执行上下文的不同。

handlerpost是在UI线程中运行的,主要用于发送消息到UI线程进行处理,例如更新UI元素等任务;而viewpost则是在非UI线程中运行的,主要用于发送消息到UI线程进行处理,例如从后台线程向UI线程发送通知等任务。两个线程模型的适用场景不同,开发者可以依据实际需要抉择适宜的线程模型来实现相应的功能。

区别是

依据 ViewRootImpl 是否已经创建,View.post() 会执行不同的逻辑。假如 ViewRootImpl 已经创建,即 mAttachInfo 已经初始化,直接通过 Handler 发送消息来执行任务。假如 ViewRootImpl 未创建,即 View 尚未开始绘制,会将任务保存为 HandlerAction,暂存在队列 HandlerActionQueue 中,等到 View 开始绘制,执行 performTraversal() *** 时,在 dispatchAttachedToWindow() *** 中通过 Handler 分发 HandlerActionQueue 中暂存的任务。

springmvc中handler是什么?

HandlerMapping是URL和对应要执行代码段关系的聚集。如当请求发生时, DispatcherServlet 将请求递交给 hangler mapping, 让其检测请求并提出一个适宜的 HandlerExecutionChain.DispatcherServlet 将执行该处理器和拦截器。

handler机制的原理?

关于这个问题,Handler机制是Android中一种重要的消息处理机制,其原理是:

1. Handler实例化时会与一个Looper对象绑定,Looper对象是一个消息循环器,负责不断地从MessageQueue中取出消息。

0
回帖

面试:Handler的工作原理是怎样的?handlerpost和viewpost区别? 期待您的回复!

取消