我有一名工作人员Thread
与Handler
相关联。 Handler
收到Message
并在工作人员Thread
中执行某些操作。我想“停止”我Thread
的{{1}}中的onPause()
。在我Activity
的{{1}}方法中,我向我的onPause()
发送了退出邮件,以便我的工作人员Activity
突破Handler
并从Thread
返回{1}}。
Looper.loop()
的正确方法吗?如果没有,应该怎么做?run()
调用Thread
的代码示例,其中t1是其工作人员t1.join()
。
Thread
的目的是什么?Thread
?我的工作人员join()
:
join()
答案 0 :(得分:0)
我没有在android上工作,但在java中,一个线程可以通过以下方式停止 -
使用volatile布尔标志 - 在循环中使用此标志(while(flag))。哪个一直运行直到旗帜为真。如果要将线程集标志停止为false。
检查中断标志 - 线程类中的静态布尔方法为Thread.interrupted(),它检查中断标志。您可以通过调用Thread.interrupt()来中断等待的线程。
Join()方法 - Join方法使当前线程等待线程死亡。当你有一些逻辑只在一个线程完成执行后执行时,就会使用它。所以你不能使用join来停止一个线程但是让一个线程等待另一个线程完成。
希望它有所帮助。感谢