首页 文章

什么时候是杀死一个线程的最佳时机?

提问于
浏览
0

我有一个活动,它有一个扩展SurfaceView的类,并实现Runnable以不断在Canvas对象上绘制 . 我意识到当我想切换活动并杀死当前的活动时,即使我调用 finish() ,Thread也不会自行销毁 . 因此,我想知道什么时候是销毁该线程的最佳时机(可能在 onDestroy() 方法?),更重要的是如何销毁该线程?谢谢 .

1 回答

  • 1

    不,因为onDestroy在活动结束时始终不会被调用 . 最好的办法是onStop()你杀了线程,而onStart()你总是启动它 .

    这样,当你的活动在后台时,线程将永远不会运行,并且当它关闭时将被杀死 .

    杀死一个线程取决于你使用的是什么类型的线程 . 一个普通的线程可以被杀死

    yourThread.interrupt()
    

    那么在你的主题中,你会做类似的事情

    while(!Thread.currentThread().isInterrupted()) {
             // ...
        }
    

相关问题