我有一个IntentService
接收数据并将其写入本地数据库。然后处理DB数据。目前我正在使用onHandleIntent()
方法完成所有操作。
问题:数据不会立即存储在数据库中。但它应该是。而是在第一次完成后处理下一个数据块。
要同步处理数据块。
我的解决方案想法:
1)我可以使用Service
代替IntentService
。但是,我想避免这种情况,因为我想避免处理异步内容。
2)我可以使用两个IntentService
:第一个接受数据并存储它。第二个读取并处理它。
3)我可以产生WorkerThread
(或使用ExecutorService
)来处理数据。这就是我想要的方式。
现在,我的问题:当IntentService
离开IntentService
方法时,onHandleIntent()
生成的线程会发生什么?有什么问题可以预料吗?应该使用选项2)还是1)?
答案 0 :(得分:0)
Thread
生成的 IntentService
绑定到IntentService
对象(pid)的生命周期。
如果处理应该是同步的,那么你应该选择选项2.