每次创建新的线程时,它都会被添加到主线程组中,甚至我会将它仍然存在于主线程组中的线程清零,从而导致内存泄漏。请帮助如何从线程组中删除线程
更新
public void surfaceDestroyed(SurfaceHolder holder) {
Log.d("mThread", "Surface Destroyed Called");
getHolder().removeCallback(this);
boolean retry = true;
_thread.setRunning(false);
while (retry) {
try {
Log.d("mThread", "b4 Interrupted");
_thread.interrupt();
Log.d("mThread", "b4 thread group Interrupted");
_thread.getThreadGroup().interrupt();
Log.d("mThread", "b4 join");
_thread.join();
retry = false;
} catch (InterruptedException e) {
Log.d("mThread", "Interrupted");
Thread.currentThread().interrupt();
_thread.getThreadGroup().list();
_thread = null;//======>here nulling thread
break;
}
}
}
我没有太多的代码显示。请帮助 – 2011-06-10 10:17:30
',甚至我将它仍然存在于主线程组中的线程清空。这是什么意思? – 2011-06-10 10:24:15
亲爱的走鹃我已经更新了代码,请帮助我 – 2011-06-10 10:36:06