Android ArchTaskExecutor快速线程切换

本文详细介绍了Android Jetpack中的ArchTaskExecutor如何实现线程池并进行线程切换。通过示例代码展示了在主线程和工作线程间切换执行任务的方法,为Android应用的异步处理提供了便利。
摘要由CSDN通过智能技术生成

 Jetpack 下 androidx.arch.core.executor 包中有一个线程池实现类 ArchTaskExecutor

内部实现了切换线程的功能。

使用如下:

    /**
     *Author:XingHai.Zhao
     *Purpose: ArchTaskExecutor实用举例
     */    
    Executor threadExecutor;
    //处在未知线程中,判断当前线程是否是主线程,依此来决定线程要切换到哪个线程          
    if (Thread.currentThread() == Looper.getMainLooper().getThread()){
        //这里的逻辑是:如果当前处于主线程,那么最后切换到主线程
         threadExecutor = ArchTaskExecutor.getMainThreadExecutor();
    }else {
         threadExecutor = ArchTaskExecutor.getIOThreadExecutor();
    }
    thread { 
        //最终决定业务在哪里执行或返回
        threadExecutor.execute(new Runnable() {
            @Override
            public void run() {
               //需要最终切换的业务
            }
        });
    }

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值