顶部翻译:
/*** 一个 Handler 允许你send和处理 Message 和 Runnable与线程的 MessageQueue 关联的对象。* 每个处理程序实例与单个线程和该线程的消息相关联队列。* 当您创建一个新的Handler时,它会绑定到一个 Looper上。* 它将消息和可执行任务传递给 Looper 的消息队列并在 Looper 的线程上并执行它们。** Handler 有两个主要用途:* (1)安排消息和可执行任务在未来的某个时间点执行;*  (2) post和send消息要在不同的线程上执行。** 发送消息是通过* post, postAtTime(Runnable, long), postDelayed,sendEmptyMessage,* sendMessage、sendMessageAtTime 和 sendMessageDelayed 这些方法。** Handler允许你将 Runnable 对象放入队列;* Handler允许你放入一个 Message 对象,其中包含一组数据,* 这些数据将被 handleMessage 这个方法接收。** 当 send 或 post 到 Handler 时,你可以在消息队列上马上接受处理,也可以延迟处理* sendMessageAtTime 和 sendMessageDelayed 方法可以实现定时、延迟等基于时间的功能** 当一个进程是为app创建的,它的主线程专门用于运行一个消息队列,* 该消息队列负责管理顶级应用程序对象(活动、广播接收器等)和它们创建的任何Windows** 你可以创建一个子线程,通过 Handler 与主线程通信。* Handler通信:通过子线程的 post 或 sendMessage 方法将计划的* Runnable 或 Message 放到 Handler 的消息队列中,按优先级队列进行处理。*/public class Handler {  //构造函数翻译
/*** 默认构造函数将此与当前线程的 Looper 相关联。** 如果该线程没有 Looper,则该程序将无法接收消息,因此会引发异常。** 在 Handler 构造期间选择的 Looper 可能会导致操作丢失(比如 Handler 销毁)、* 崩溃(如果在没有 Looper 的线程上放消息)* 可以通过 concurrent.Executor、Looper.getMainLooper或类似方法明确指定 Looper。* 如果默认是本线程,请使用 new Handler(Looper.myLooper())*/
@Deprecatedpublic Handler() {this(null, false);}
/*** 使用提供的 Looper 并采用一个回调接口来处理消息,再设置 Handler 是否是异步的。** 默认情况下,Handler 是同步的,除非使用此构造函数来创建一个异步的 Handler。** 异步消息不受 MessageQueue 的等待影响,立刻处理消息。** 传进来的 looper 一定不能为空。* callback 处理消息的回调接口或为 null。* async 如果为 true,则 Handler 让它的每个 Message 或 Runnable* 都调用 Messageset.Asynchronous(boolean)*/
@UnsupportedAppUsagepublic Handler(@NonNull Looper looper, @Nullable Callback callback, boolean async) {mLooper = looper;mQueue = looper.mQueue;mCallback = callback;mAsynchronous = async;}

}

Handler源码翻译相关推荐

  1. Handler源码分析(超详细的)

    这篇博客是一种入门级的但讲的很细,本人能力有限,希望看到大神,发现有不对的地方请联系我,也希望可以和大家在讨论区互动. 本文不管是从哪得到得信息,本人都认真的研究过和测试.包括代码所以说本人技术可能一 ...

  2. Handler源码解读

    大家面试的时候是否经常被问到有没有看过handler源码,如果回答看过了接下来就各种深入提问,直到问得你云里雾里面试官才开心.今天作者带领大家一起深入地过一遍handler源码,将面试常用问题各个击破 ...

  3. Handler源码解析2

    Handler源码解析1 https://blog.csdn.net/qq_44076155/article/details/110676740 Handler源码解析2 https://blog.c ...

  4. Handler 源码解析——Handler的创建

    前言 Android 提供了Handler和Looper来来满足线程间的通信,而前面我们所说的IPC指的是进程间的通信.这是两个完全不同的概念. Handler先进先出原则,Looper类用来管理特定 ...

  5. ArrayList源码翻译

    ArrayList源码翻译 简介 属性解读 初始化 添加方法 get方法 set方法 remove方法 contains方法 clone方法 总结 简介 ArrayList 是 java 集合框架中比 ...

  6. Handler全家桶之 —— Handler 源码解析

    本篇文章已授权微信公众号 guolin_blog (郭霖)独家发布 本文首发于本人简书 前言 好记性不如烂笔头. 这是一个系列文章,将会包括: Handler全家桶之 -- Handler 源码解析 ...

  7. three.js源码翻译及案例(五)-GLTFLoader.js

    写在前面 Three中的加载脚本很多,但是核心思想是差不多的,就是文件用文件解析器加载,图片用图片解析器加载,然后json转换为对象,但是由于gltf格式可以自己编辑所以有的源码参考意义不大,glb及 ...

  8. easyui源码翻译1.32--panel(面板)

    前言 昨天发布了表格datagrid的翻译源码 ,easyui的许多插件有依赖关系  比如datagrid 的渲染需要panel.resizable.linkbutton.pagination   今 ...

  9. easyui源码翻译1.32--Messager(消息窗口)

    前言 使用$.messager.defaults重写默认值对象.下载该插件翻译源码 消息窗口提供了不同的消息框风格,包含alert(警告框), confirm(确认框), prompt(提示框), p ...

最新文章

  1. 2019年互联网趋势报告
  2. 电脑如何恢复声音_电脑文件剪切丢失如何恢复?99%数据都能恢复
  3. 活久见!北大博士干了半年外卖骑手,写出 AI 伦理论文登上顶刊,“系统知道一切”...
  4. Android中的防缓冲区溢出技术
  5. PHP中预定义的超全局数组
  6. DHL全球货运与第四范式达成合作
  7. rocketmq 消费者不能调用其他服务_Spring Cloud Alibaba RocketMQ - 构建异步通信的微服务...
  8. 【数据结构与算法】之深入解析“分数加减运算”的求解思路与算法示例
  9. Beef加载MSF插件
  10. java中数组的返回值是什么类型_打印java 数组的最简单方式是什么?
  11. php感悟1500,《苏菲的世界》读书笔记及心得感悟1500字
  12. 关于constexpr
  13. Linux产生僵尸进程和孤儿进程及区别
  14. [转]VS2010 安装 fixedsys字体
  15. Word中插入MATLAB矢量图
  16. 华为员工离职心声:菊厂15年退休,感恩,让我实现了财务自由!
  17. 2017 Top 10 Web 应用安全威胁,你的企业正在经历哪些?
  18. 浅谈SQL基础操作概念
  19. qt 嵌入web页面_Qt与Web混合开发(一)--简单使用
  20. NLP专题直播 | 详谈Transformer, BERT, ALBERT, XLNet(ALBERT第一作者亲自讲解)

热门文章

  1. 【Shell】source命令
  2. 【Linux】网络基础(1)
  3. mac版mysql workbench_MySQL Workbench for mac下载-MySQL Workbench for mac(数据库工具) v8.0.16特别版 - Mac天空...
  4. 2022.10.EEP開發筆記-1
  5. 华为手机一键刷新在哪里_华为手机怎么开启应用自动更新?华为手机WIFI下自动更新软件教程...
  6. 【​观察】SAP Analytics Cloud在华落地,用哪“三把钥匙”打开分析云市场?
  7. 软件工程毕业设计课题(75)微信小程序毕业设计PHP购物商城小程序系统设计与实现
  8. PermissionError: [Errno 13] Permission denied 已解决
  9. Python合并两个相交的框
  10. 绿屏抠图(image matting)