我应该为我的应用程序使用ThreadPool或IntentService吗?

时间:2014-12-22 13:42:29

标签: android multithreading intentservice

您好我正在我的应用中实施贴纸功能。在这里,用户可以在Viber和Line等背景下载多个贴纸包。

我对我使用的东西有点困惑:Thread或IntentService。

如果用户转到正在下载或在队列中的Sticker包,那么我需要在那里显示。

下载后我需要将其存储在数据库中。

请帮忙。

2 个答案:

答案 0 :(得分:1)

IntentService的优点是,当其守护程序线程忙时,将正确启动和停止服务。与IntentService进行通信(使用意图)也很简单,并提供出色的隔离和线程安全性。

如果IntentService限制性太强(单线程;单向,Parcelable通信),那么您可能想要滚动自己的绑定ExecutorService。这是相当多的工作:您需要管理启动和停止服务,处理绑定以及从客户端活动解除绑定服务,始终注意线程安全。

......实际上,我很惊讶没有一个图书馆在那里做这件事。这是一个普遍需要。

答案 1 :(得分:0)

ServiceThreadPoolExecuter一起使用,而不是IntentService