我已经读过服务与线程不同,因为它不受当前活动的影响。但线程是。但是,Looper也是一种不受当前活动影响的服务,它们都在后台运行。
那么什么基本上不同的服务和一个looper ......?
请帮帮我。我对这些话题感到很困惑。
答案 0 :(得分:1)
Looper 是一个用于执行队列中的Messages(Runnables)的类。普通线程没有任何队列。例如,Simple线程没有任何队列。它们是一次性执行,在代码结束后,线程将被停止/终止,并且它将无法运行另一个Message(Runnable)。
<强>用法强> 如果要执行多个消息(Runnables),则应使用Looper类,该类负责在线程中创建队列。例如。如果您正在编写从Internet下载文件的应用程序,那么您可以使用Looper类将所有文件放入队列中进行下载。
服务在不同的进程中运行,在应用程序中说如果崩溃或应用程序运行的进程被杀死那么Async Task / looper也会被杀死而不是服务因为服务是在不同的过程中运行。 Looper在app unkike Service的同一个线程中运行。也是Android推荐使用Async任务而不是Loopers。