【问题标题】:Android: Will a new thread simply stop after it has finished it's execution?Android:一个新线程在完成执行后会简单地停止吗?
【发布时间】:2014-03-09 01:38:04
【问题描述】:
线程完成执行后会直接终止吗?
这就是我初始化线程的方式:
new Thread(new Runnable() {
public void run() {
}
}).start();
基本上我想做的只是在一个新线程上执行一个任务,然后终止线程。但是,一段时间后,我将开始另一个,依此类推。我不想启动一堆线程,我想知道线程在完成执行后是否会自行终止?
谢谢。
【问题讨论】:
标签:
java
android
multithreading
thread-safety
【解决方案1】:
是的。当run返回时,线程将停止。
要在 Android 上的线程中执行单个任务,您可能需要考虑改用 AsyncTask。 AsyncTask 正是为此目的而设计的。它为您提供了一种将数据传递给另一个线程的简单方法,并将进度更新和最终结果传递回主线程。每个AsyncTask 都类似于Thread,但具有这些额外功能。
【解决方案2】:
线程在完成执行后会直接终止吗?
是的,它会在完成run()方法后自行终止并退出