嘿我正在尝试制作多个http请求,并想知道在android中执行此操作的最佳方法。目前我正在使用带线程的IntentService,但是这不能很好地工作,因为onhandleintent在线程完成之前返回。我应该切换到常规服务并在那里启动我自己的线程还是asyncTask更合适? 感谢
答案 0 :(得分:0)
每当你处理线程时,你将不得不处理同步。例如,当调用onHandleIntent()时,您可能需要与HTTP请求线程同步并等待它完成。
如果你提前知道你将会做很多事情,那么可能值得查看类似ThreadPoolExecutor之类的东西来节省创建和拆除线程的痛苦。如果您想在继续之前等待终止,您仍然需要同步线程。 Android有很多方法可以做到这一点,包括抽象,使其实现起来相当简单。
答案 1 :(得分:0)
如果您已经开始新线程(无论是直接还是间接),那么您应该使用Service
而不是IntentService
。 IntentService
的重点在于它为您处理线程。