11

我想用IntentService. Intent我通过IntentService调用传递一个 url startService(intentserive);

如果我要求startService各种意图,这些意图会排队等待下载吗?

4

2 回答 2

15

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

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

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

所有请求都在单个工作线程上处理——它们可能需要尽可能长的时间(并且不会阻塞应用程序的主循环),但一次只会处理一个请求。

官方文档链接

于 2015-02-08T11:57:47.060 回答
0

是的。意图服务将所有工作意图排队并在单个工作线程中一一处理。

于 2015-02-08T12:13:33.107 回答