有什么方法可以在后台执行

时间:2014-11-24 13:59:25

标签: android multithreading background

我的问题很简短。

有什么不同的方法可以在后台执行,以及它们的优缺点是什么?

我在其他进程中使用过一些,比如Thread,AsyncTask,TimerTask,Serivce,Service,但是 我不知道他们的利弊是什么。

2 个答案:

答案 0 :(得分:1)

将AsyncTasks用于小任务。如果你想定期做一些事情,比如每隔x秒检查一次更新,请使用后台服务(后台服务即使在你关闭应用程序时也可以运行,但不必这样做。)

看这里,这是Asynctasks和线程的一个很好的解释和教程: http://www.vogella.com/tutorials/AndroidBackgroundProcessing/article.html

答案 1 :(得分:0)

AsyncTask - 对于在后台完成的简单任务非常有用。通常用于以“火与忘”的心态开始新的线程。

Thread - 适用于有多个步骤或需要在后台永久运行的流程。

TimerTask - 对于需要按时间表执行的任务非常有用。

Android Service - 这些共享应用程序的主线程。服务基本上是没有布局的活动。用于在应用程序或活动的整个生命周期中在后台运行进程,但需要为任何繁重的工作生成自己的线程。