在多次调用IntentService的startService时,intent是否会排队?

时间:2015-02-08 11:50:41

标签: android android-intentservice

我想通过互联网下载IntentService。我通过调用Intent将{ur了} IntentService传递给startService(intentserive);

如果我为各种意图调用startService,那么意图会排队下载吗?

2 个答案:

答案 0 :(得分:14)

您的问题的简短回答是肯定的。来自文档:

  

IntentService是处理异步的Services的基类   请求(表示为Intents)。客户端发送请求   通过startService(Intent)调用;该服务根据需要启动,   使用工作线程依次处理每个Intent,并自行停止   当它用完了。

     

这个"工作队列处理器"模式通常用于卸载任务   来自应用程序的主要线程。 IntentService类存在于   简化这种模式并处理机制。要使用它,   扩展IntentService并实现onHandleIntent(Intent)。   IntentService将接收Intents,启动一个工作线程,并且   酌情停止服务。

     

所有请求都在一个工作线程上处理 - 它们可以作为   只要有必要(并且不会阻止应用程序的主循环),   但一次只能处理一个请求。

Official docs link

答案 1 :(得分:0)

是。 Intent服务将所有工作意图排队,并在单个工作线程中逐个处理它们。