这是在服务中使用AsyncTask的常规做法(不是IntentService)。或者以另一种方式创建后台线程更好?
答案 0 :(得分:4)
这是在服务中使用AsyncTask的常规做法
没有。 AsyncTask
的要点是在后台工作完成后能够在主应用程序线程上做一些工作。服务很少(如果有的话)需要在主应用程序线程上工作。
或者以其他方式创建后台线程会更好吗?
是的:new Thread()
可以成为AsyncTask
的直接替代者。在其他情况下,某种形式的线程池可能有意义。
答案 1 :(得分:1)
不,AsyncTask旨在在远离UI线程的后台线程中运行一些短暂的工作。它有回调函数,允许它在完成后修改UI线程。
如果您需要服务中的单独线程,请使用new Thread()