安全终止Thread,解决再次开启线程时Thread is already started的错误
1、定义自己的Thread
class UiThread extends Thread {
private volatile boolean isRun = true;
@Override
public void run() {
while (isRun) {
//你的操作
}
}
public void close() {
isRun = false;
}
}
2、线程的操作地方调用代码如下:
Button start;
Button stop;
UiThread thread;
</pre><pre name="code" class="java">start = (Button) findViewById(R.id.btn_start);
stop = (Button) findViewById(R.id.btn_stop);
start.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
// 每次开启都要重新实例化
thread = new UiThread();
thread.start();
}
});
stop.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
// 关闭
thread.close();
thread = null;
}
});