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

Android - Handler使用post之后,Runnable没有执行

问题:子线程创建的Handler。如果 post 之后,在Handler.removeCallbacks(run)移除了,下次再使用Handler.postDelayed(Runnable)接口或者使用post时,Runnable是没有执行。导致没有收到消息。

解决办法:只有主线程创建的,remove之后,还可以post。

原因: 在主线程new一个Handler的时候,默认使用的是当前线程的Looper,就是系统为我们创建好的MainLooper。所以不需要自己在手动写prepare() 和 loop()函数。

如果在子线程中创建了一个Handler,那么就必须做三个操作: prepare()、 loop()、quit()

所以留意,new Handler时机,是否在主线程。

http://www.dtcms.com/a/25160.html

相关文章:

  • 地理探测器数据准备及驱动因素分析
  • SQL在云计算中的新角色:重新定义数据分析
  • 【阮一峰】14.命名空间
  • 学习总结2.18
  • ppt中如何快速自动地将整页标题和大段文字自动设计形状和颜色
  • kafka消费能力压测:使用官方工具
  • 大模型工具大比拼:SGLang、Ollama、VLLM、LLaMA.cpp 如何选择?
  • 刚性平衡机建模
  • [Android] Battery Guru - 手机电量管理优化
  • stm32rtc实时时钟详解文章
  • 学习查看 linux 关于进程的文件信息 cat /proc/968/status
  • LNMP+Zabbix安装部署(Zabbix6.0 Lnmp+Zabbix Installation and Deployment)
  • 02.05、链表求和
  • 【算法】回溯算法
  • spring boot知识点3
  • Dart 3.5 学习汇总(更新中)
  • 【Pandas】pandas Series last
  • Docker镜像拉取失败解决方案
  • centos7配置rsyslog日志服务器
  • 【阮一峰】5.函数
  • C++:并发编程基础
  • 【前端ES】ECMAScript 2023 (ES14) 引入了多个新特性,简单介绍几个不为人知但却好用的方法
  • 华为交换机堆叠技术简介配置
  • .NET SixLabors.ImageSharp v1.0 图像实用程序控制台示例
  • PBR光照模型相关知识
  • Spring核心思想之—AOP(面向切面编程)
  • 【笔记】LLM|Ubuntu22服务器极简本地部署DeepSeek+联网使用方式
  • Windows 图形显示驱动开发-WDDM 2.0-GPU 虚拟地址
  • 蓝桥杯单片机基础部分——单片机介绍部分
  • 浅析前端监控与埋点:洞察用户行为,优化产品体验