这里简单的总结下(大概思路,没调试,可能会有错!):
MyThread.java
代码如下 | 复制代码 |
pulbicclassMyThread implemets Thread{
@overide publicvoidrun{ while(!Thread.interrputed()){ } } } xxx.java
Thread mThread =newMyThread();
publicstaticvoidstartThread(){ mThread =newMyThread(); mThread.start(); }
publicvoidstopThread(){ if(mThread!=null){ mThread.interrupt(); mThread =null; } } |
run函数里面必须有判断中断状态的while循环,外部在中断Thread时,必须显示调用interrupt()。注意:interrupte()函数只是设置中断标志,不是强制中断,所以run中才需要不断地检测中断标志(Thread.interrupted())
java中,中断Thread后,就不能直接重新start了,必须new一个新实例,不然会报错。
广发证券与HashKey在香港推出代币化证券 助力城市推进加密雄心
买入区域已激活:加密货币抛售后,山寨币蓄势待发
马斯克Neuralink发布会震撼来袭:七人已植入脑机介面改变人生、下一步终结盲人,超狂路线图公开
为什么花140美元买Solana,而Kaanch只要0.64美元?(限时优惠)
随着山寨币势头回升,当前最值得关注的三大预售加密货币——其中一款已筹集超3亿美元
首席软件工程师表示,Ripple技术上并不持有380亿XRP代币