栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

执行器和PriorityBlockingQueue上的ASyncTask

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

执行器和PriorityBlockingQueue上的ASyncTask

从android.os.AsyncTask借用源代码,并创建自己的com.company.AsyncTask实现,您可以在其中实现自己代码中所需的一切。

android.os.AsyncTask随附了两个现成的执行器THREAD_POOL_EXECUTOR和SERIAL_EXECUTOR:

private static final BlockingQueue<Runnable> sPoolWorkQueue =        new linkedBlockingQueue<Runnable>(10);public static final Executor THREAD_POOL_EXECUTOR        = new ThreadPoolExecutor(CORE_POOL_SIZE, MAXIMUM_POOL_SIZE, KEEP_ALIVE,     TimeUnit.SECONDS, sPoolWorkQueue, sThreadFactory);public static final Executor SERIAL_EXECUTOR = new SerialExecutor();

在com.company.AsyncTask中,创建另一个PRIORITY_THREAD_POOL_EXECUTOR,并将您的所有实现包装在此类内(您对所有内部字段都具有忠诚度),然后像这样使用AysncTask:

com.company.AsyncTask asyncTask = new com.company.AsyncTask();asyncTask.setPriority(1);asyncTask.executeonExecutor(com.company.AsyncTask.PRIORITY_THREAD_POOL_EXECUTOR, (Void[]) null);

在这里查看我的答案,看看我如何创建自己的AsyncTask来使executeOnExecutor()在API级别11之前工作。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/463366.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号