我是靠谱客的博主 眼睛大太阳,这篇文章主要介绍安卓之线程池使用ScheduledExecutorService,现在分享给大家,希望可以做个参考。

考虑到项目中定位解析时是一个耗时的操作,由于我开启的一个服务接受定位并做相关处理,里面涉及到耗时操作,为了避免每次都每次new Thread新建对象性能差,线程缺乏统一管理,可能无限制新建线程,相互之间竞争,及可能占用过多系统资源导致死机或OOM,而且还没有定期执行和延时执行的能力,不够灵活,所以我采用该线程池替代new thread

创建一个定长线程池并且支持定时及周期性任务执行

ScheduledExecutorService scheduledThreadPool = Executors.newScheduledThreadPool(5);

scheduledThreadPool.schedule(new Runnable() {

    @Override

    public void run() {

、、、、、、、

    }

}, 5, TimeUnit.SECONDS);//

 

延迟5秒执行。

 

定期执行示:

scheduledThreadPool.scheduleAtFixedRate(new Runnable() {

     @Override
     public void run() {
       、、、
     }
}, 1, 5, TimeUnit.SECONDS);

 

表示延迟1秒后每5秒执行一次

最后

以上就是眼睛大太阳最近收集整理的关于安卓之线程池使用ScheduledExecutorService的全部内容,更多相关安卓之线程池使用ScheduledExecutorService内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(119)

评论列表共有 0 条评论

立即
投稿
返回
顶部