Android:IntentService是按请求还是同时处理请求

时间:2013-05-11 17:28:56

标签: android intentservice

我有自定义的IntentService:

public class CustomService extends IntentService {
// some line of code here 
}

我从CustomService拨打BroadcastReceiver因为长度不是固定的(根据BroadcastReceiver的调用频率,所以调用CustomService有时会重叠。表示一个Service对象在另一个Service对象开始启动时仍然运行。

我的问题是:当另一个CustomService对象开始播放时,它将等到另一个{I}}对象运行之前。或者它将与其他人同时运行。这一点对我来说很重要,因为如果它们一起工作,由于多线程访问相同的资源,我将遇到一些问题。

谢谢:)

1 个答案:

答案 0 :(得分:3)

  

这意味着当另一个Service对象开始启动时,它仍会运行。

没有。您的CustomService最多只有一个实例。

  

当另一个CustomService对象开始播放时,它会等到另一个已经完成,然后再运行。或者它将与其他人同时运行。

如果我们将“另一个CustomService对象”转换为“另一个startService()调用”,IntentService一次处理一个命令(Intent对象)。在Intent使用您的第一个startService()完成工作之前,系统不会处理您的第二次onHandleIntent()来电中的Intent