android handlerthread--线程和UI同步
2023-09-14 09:05:10 时间
当我们需要工作线程来操作的时候,很多时候会有同步问题,UI更新问题。
Handle机制就是为了解决这个问题而产生的。
android允许每个线程都有自己的消息队列,同时也可以是主线程消息队列。
但是很多时候,我们希望可以快速的创建一个支持自己消息队列的android线程,这个时候HandlerThread就做了很好的封装。
package com.joyfulmath.demo.function;
import android.content.Context;
import android.os.Handler;
import android.os.HandlerThread;
import android.os.Message;
public class HandleThreadDemo {
HandleThread thread = null;
Context ctx = null;
Handler mHandle = null;
public HandleThreadDemo(Context context){
thread = new HandleThread(“demo.thread”);
ctx = context;
mHandle = new Handler(thread.getLooper()){
@Override
public void handleMessage(Message msg) {
// TODO Auto-generated method stub
super.handleMessage(msg);
}
};
}
}
如你所见,我们只需要自己定义 handleMessage,其他的消息一直在handlerthread的run中运行,这样只要有消息被丢到该方法中即可实现同步!
相关文章
- android 安装p12证书,如何在Android中使用p12证书(客户端证书)
- 【Android布局】在程序中设置android gravity 和 android layout Gravity属性
- iphone4装android,iPhone4可安装Android实现双系统启动.pdf
- Agora SDK 在Android中的使用(在线视频通话)| 掘金技术征文
- android系统中toast是什么_Android个人资料简单布局
- Android平台GB28181设备接入端实现实时快照
- android调用相册并显示图片_Android获取相册列表
- Android Services Library_android freeware
- Android系统推送Hook实战
- Android Audio支持Usb 音频设备
- android 系统浏览器 源码-Android 最最最简单的浏览器代码
- 【Android从零单排系列三】《认识一下Android项目结构》
- 26款优秀的Android逆向工程工具
- 【Android 应用开发】 ActionBar 样式详解 -- 样式 主题 简介 Actionbar 的 icon logo 标题 菜单样式修改
- 【Flutter】Flutter 应用创建运行 ( Android Studio 创建 / 运行 Flutter 应用 | 命令行创建 / 运行 Flutter 应用 )
- 【Android FFMPEG 开发】FFMPEG 直播功能完整流程 + 源码 ( 源码交叉编译 -> AS工程配置 -> 音视频打开/读取/解码/格式转换 -> 原生绘制播放 -> 音视频同步 )
- 【Android 高性能音频】Oboe 开发流程 ( 导入 Oboe 库 | 使用预构建的二进制库和头文件 | 编译 Oboe 源码 )
- 【Android 进程保活】应用进程拉活 ( 账户同步拉活 | 账号添加 | 源码资源 )
- 【Android 进程保活】应用进程拉活 ( 账户同步拉活 | 账户同步 | 源码资源 )
- 【Android 安装包优化】使用 lib7zr.so 动态库处理压缩文件 ( 拷贝 lib7zr.so 动态库头文件到 Android 工程中 | 配置 CMakeLists.txt 构建脚本 )
- 【Android 逆向】Android 进程注入工具开发 ( 总结 | 源码编译 | 逆向环境搭建使用 | 使用进程注入工具进行逆向操作 ) ★★★
- 【Android Gradle 插件】build.gradle 中的 android 配置 ( 配置项 | compileSdkVersion 配置 | buildToolsVersion 配置 )
- 【ijkplayer】编译 Android 版本的 ijkplayer ⑤ ( 执行 init-android-libyuv.sh | 执行 init-android-soundtouch.sh )
- 【Unity3D】Unity 中使用 C# 调用 Java ③ ( C# 调用 Java 实例 | 进行 Android 工程打包 | Android Studio 中运行 Android 工程 )
- Android-SQLite数据库操作详解手机开发
- [android] 请求码和结果码的作用详解手机开发
- Android 写一个属于自己的音视频播放器详解手机开发
- android通过http请求获得json内容详解编程语言
- android调用系统的照相机和图库实例详解
- 探讨:如何修改Android超时休眠时间