暂停在后台线程上运行的任务以运行更高优先级的任务

时间:2014-09-05 00:56:16

标签: android android-asynctask android-service android-handler

我有一项服务在后台线程上做了一些繁重的工作。它基本上下载一个大的zip(> 5MB),存储它,解压缩它,解析XML并将信息存储在SQLite数据库中。

虽然服务正在完成其工作,但我有时必须运行快速后台任务(例如登录用户)。但是,由于服务非常繁忙(通常是解压缩zip文件),我的短任务需要一段时间才能运行(用户必须等待)。

有没有办法可以完全暂停我的服务(以及它的后台AsyncTask),这样我就可以运行新的更高优先级的任务了?

谢谢!

1 个答案:

答案 0 :(得分:1)

根据这个:

stackoverflow.com/questions/18480206/asynctask-vs-thread-in-android

你不尝试使用简单的java线程而不是使用AsyncTask。你也可以尝试给予它更大的优先权,但在我看来,优先级并不那么有效。