在项目中遇到这样的一种情况 想要让某些任务顺序执行 但是如果用多线程的话是无法保证顺序的 所以这里我就采用单线程的方式去处理

第一种方式 Rxjava 结合 Executors去先单线程执行

ExecutorService es = Executors.newFixedThreadPool(1);final CompositeDisposable disposable = new CompositeDisposable();Observable.create(new ObservableOnSubscribe<Object>() {@Overridepublic void subscribe(ObservableEmitter<Object> e) throws Exception {}}).subscribeOn(Schedulers.from(ThreadUtils.getInstance().getEs())).subscribe(new Observer<Object>() {@Overridepublic void onSubscribe(Disposable d) {disposable.add(d);}@Overridepublic void onNext(Object value) {TODO: 2017/12/7 doSomething }@Overridepublic void onError(Throwable e) {}@Overridepublic void onComplete() {}});复制代码

如果不想要上次处理的结果了 可以clear即可

disposable.clear();
复制代码

使用Executors其实可以不用rxjava的 只是使用rxjava可以进行一些更方便的处理 ExecutorService es = Executors.newFixedThreadPool(1); 如果当前这一条线程在忙 其他的任务就会自行等待 不用做处理

第二种使用intentService

使用intent service 这就不用说了 内部使用handler的方式封装处理 一次只会处理一件事

第三种方式 使用stack

这是jdk自带的 自己处理进栈出栈 就是可能会麻烦点

android 顺序执行任务相关推荐

  1. 开机动画、反编译、Android 中执行命令

    1>开机动画  80% 手机的开机动画都存放在 /system/media/bootanimation.zip文件中,在/system/bin 目录下有个bootanimation 文件,bin ...

  2. python如何控制程序的运行顺序_Python流程控制-1 顺序执行

    流程控制指的是代码运行逻辑.分支走向.循环控制,是真正体现我们程序执行顺序的操作.流程控制一般分为顺序执行.条件判断和循环控制. 顺序执行 Python代码在执行过程中,遵循下面的基本原则: 普通语句 ...

  3. jmeter 线程执行顺序_面试官让我说出8种线程顺序执行的方法!我懵了

    https://www.cnblogs.com/wenjunwei/p/10573289.html 一.前言 本文使用了8种方法实现在多线程中让线程按顺序运行的方法,涉及到多线程中许多常用的方法,不止 ...

  4. 多线程顺序消费MySQL数据_关于MQ的几件小事(五)如何保证消息按顺序执行

    1.为什么要保证顺序 消息队列中的若干消息如果是对同一个数据进行操作,这些操作具有前后的关系,必须要按前后的顺序执行,否则就会造成数据异常.举例: 比如通过mysql binlog进行两个数据库的数据 ...

  5. 【Android FFMPEG 开发】Android 中执行 FFMPEG 指令 ( 集成 FFmpegAndroid 框架 )

    文章目录 一.推荐开源项目 二.Android 中执行 FFMPEG 指令 1.导入依赖 2.Java 代码编写 3.使用时的代码示例 三.博客资源 一.推荐开源项目 最近需要在 Android 中进 ...

  6. linux shell顺序执行,shell 执行顺序

    shell script 到今天,我还只能一个劲顺序执行,尝试探索下其更加强大的功能. 一个主文件 main ,三个调用文件 shell1.shell2.shell3,调用文件差别仅仅在于显示内容不同 ...

  7. 网站性能分析(下)-让网站并行加载但顺序执行JS

    如果网站不支持JavaScript,复杂的功能将无法正常工作.在开发当中通常有几个脚本会写在HTML文件的头部.你嵌入的越多,网站的速度潜在的变得越慢.因此提高并行加载速度变得非常有必要,在前面的文章 ...

  8. 面试官:线程顺序执行,这么多答案你都答不上来?

    前言:最近在面试过程中,发现一些面高程的朋友连怎么实现线程顺序执行都答不上来,特分享相关文章,以作科普,有收获帮忙点个在看,感谢,助中秋快乐! 一.实现 本文使用了8种方法实现在多线程中让线程按顺序运 ...

  9. java 并行 执行进度_关于java:Java8流的顺序执行和并行执行产生不同的结果?

    在Java8中运行以下流示例: System.out.println(Stream .of("a","b","c","d" ...

最新文章

  1. 25岁后,拉开你和同龄人差距的,不是出身,不是努力,而是……
  2. MySQL数据库半同步复制
  3. Linux入门之系统启动过程及初始化----“翻滚吧,牛宝宝”
  4. 大型网站系统与Java中间件实践pdf
  5. CentOS 7 firewalld使用简介
  6. oracle数据库安装过程中出现主目录不兼容的问题
  7. python修改excel内容怎么覆盖_Python修改Excel的内容,python,excel
  8. python 检查域名是否可以访问_糖尿病人是否都要做喝糖水的检查?结果可以说明胰岛功能水平吗?...
  9. 拓端tecdat|Python实现谱聚类Spectral Clustering算法和改变簇数结果可视化比较
  10. 如何在信用卡反欺诈检测中使用人工智能和机器学习
  11. php聊天机器人源码,简单聊天机器人源码
  12. Activity启动模式之SingleTask模式各种跳转
  13. vnc 键盘慢_在基于Web的VNC应用程序中支持多种键盘布局
  14. 力扣解法汇总553-最优除法
  15. 苹果xr黑屏转圈圈解决方法_iPhonexr黑屏转圈怎样解决?
  16. html中怎样写css路径,CSS 书写位置
  17. MHz 和 Mbps的区别
  18. 【笔记】Linux 802.11n CSI Tool部分机翻
  19. 两万字梳理 Java 入门进阶那些事
  20. 提名卡斯卡迪亚的免费软件社区贡献者

热门文章

  1. Sudo 漏洞隐患不断,macOS 也受牵连!
  2. 桂林机场春运期间新增多条航线航班 实现接力承运无缝衔接
  3. VMware Workstation Pro 共享文件夾
  4. Oracle442个应用场景---------PL/SQL基础
  5. python发送邮件和附件
  6. MicroPython支持的开发板:高性能、低成本创客首选
  7. 递归查询树状结构某个确定的节点
  8. 第14章4节《MonkeyRunner源码剖析》 HierarchyViewer实现原理-装备ViewServer-端口转发 3...
  9. jquery插件制作
  10. XP,2003下使用route命令增加永久路由(静态路由)