在Activity中创建的线程当activity执行结束,执行activity的finish()方法后,有没有必要手动消毁在此0
在Activity中创建的线程当activity执行结束,执行activity的finish()方法后,有没有必要手动消毁在此activity中创建的子线程?不消毁会不会占用内存,如何是消毁的话,在哪里比较好,在run后,还是在activity的ondestory()方法中。
文档中说thread.destory()方法已废弃,stop方法也不建议使用。
我该怎么做?
代码如下:就是实现切换界面
package com.idoapk.schooltaskUI;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.util.Log;
public class welActivity extends Activity {
private Handler handler;
private Thread thread;
@Override
protected void onCreate(Bundle savedInstanceState) {
setContentView(R.layout.welcome);
prepareLoad();
super.onCreate(savedInstanceState);
}
// **********************************
private void prepareLoad() {
handler = new Handler() {
@Override
public void handleMessage(Message msg) {
if (msg.what == 1) {
Intent intent = new Intent();
intent.setClass(welActivity.this, MainActivity.class);
startActivity(intent);
finish();
}
}
};
Runnable runnable = new Runnable() {
@Override
public void run() {
try {
Thread.sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
handler.sendEmptyMessage(1);
}
};
thread = new Thread(runnable);
thread.start();
}
}