EventBus替代AsyncTask在子线程中处理任务
来源:互联网 发布:如何破解软件试用期 编辑:程序博客网 时间:2024/06/09 06:47
之前AsyncTask写法:
new GetTask().execute(); private class GetTask extends AsyncTask<Void, Void, ArrayList<Channel>> { @Override protected ArrayList<Channel> doInBackground(Void... params) { doWastingTimeTask(); } @Override protected void onPostExecute(ArrayList<Channel> videos) { doPostExecute(); } }
改为EventBus写法:
EventBus.getDefault().post(new Event(XXX)); @Subscribe(threadMode = ThreadMode.BACKGROUND, priority = 1) public void onEventGet(Event event) { if (XXX.equals(event.tag)) { doWastingTimeTask(); doPostExecute(); } }
ThreadMode.BACKGROUND解释:
如果调用post方法的线程不是主线程,则直接在该线程执行;
如果是主线程,则切换到后台单例线程,多个方法公用同个后台线程,按顺序执行,避免耗时操作;
0 0
- EventBus替代AsyncTask在子线程中处理任务
- 使用AsyncTask在子线程中更新UI
- android_替代麻烦的异步任务 解决网络访问必须在子线程
- 【Android】安卓学习笔记之多线程、异步消息处理机制、使用AsyncTask在子线程中对UI 进行操作
- AsyncTask的套路(线程间通信中处理耗时任务的工具封装类)
- 线程相关——HandlerThread、IntentService、ResultReceiver:结果接收者、AsyncTask:异步任务、Android中处理线程间通信的方式
- EventBus抛异常了,不能在子线程更新UI。
- AsyncTask处理耗时任务
- 异步任务处理---AsyncTask
- 异步任务处理---AsyncTask
- Android开发中AsyncTask实现异步处理任务的方法
- Android开发中AsyncTask实现异步处理任务的方法
- Android开发中AsyncTask实现异步处理任务的方法
- 线程:后台异步任务AsyncTask
- *【线程优化】AsyncTask 异步任务
- Android中如何在子线程执行任务完成后更新UI
- 在子线程中Toast
- 在子线程中Toast
- 6、数码管控制实验
- Oracle高级查询--分组查询篇
- C语言中mallloc()和free()函数的使用和分析
- STM32F10x_模拟I2C读写EEPROM
- c——汇编角度理解类型定义 对象定义
- EventBus替代AsyncTask在子线程中处理任务
- |BZOJ 2060|动态规划|Visiting Cows 拜访奶牛
- [IO系统]05 open流程分析
- Android studio下将项目代码上传至github包括更新,同步,创建依赖
- Maven resource 配置中include与exclude及其filter的使用
- 在leetcode中掌握到的[长期更新]
- android 使用SharedPreferences对数据存储/删除/读取/文件删除
- thinkphp截取字符串长度,模板变量限制输出字数的方法
- iOS NSDate比较返回差多少时间