如果我的应用程序正在通过AsyncTask运行一个线程,并且同时我跳转到另一个活动(场景),该线程是否仍然在后台运行。我想如果我按回来,线程已经完成或原始场景必须重复线程活动?
答案 0 :(得分:1)
是。 AsyncTask只是Java Executor的一个聪明的包装器
答案 1 :(得分:0)
AsyncTask 是一个抽象的Android类,可以帮助Android应用程序以有效的方式处理主UI线程。 AsyncTask类允许我们执行持久的任务/后台操作,并在UI线程上显示结果,而不会影响主线程。
1。 AsyncTask进程不会被操作系统自动杀死。 AsyncTask进程在后台运行,负责在任何情况下完成自己的工作。您可以通过调用cancel(true)方法取消AsycnTask。这将导致后续调用isCancelled()返回true。在调用此方法之后,在doInBackground()返回后调用onCancelled(Object)方法而不是onPostExecute()。
2。完成该操作后,后台线程将停止。 AsyncTask有一个 onPostExecute(),一旦你的工作完成就会被调用。在 doInBackground()方法完成处理后调用此方法。来自 doInBackground()的结果将传递给此方法。
来自Here
的回答答案 2 :(得分:-1)
Async任务的生命周期未绑定到Activity。因此,一旦启动了AsyncTask,即使暂停/停止活动,asyncTask也会继续。