打字猴:1.700449747e+09
1700449747 编写高质量代码:改善Java程序的151个建议 [:1700438195]
1700449748 编写高质量代码:改善Java程序的151个建议 建议120:不使用stop方法停止线程
1700449749
1700449750 线程启动完毕后,在运行时可能需要终止,Java提供的终止方法只有一个stop,但是我不建议使用这个方法,因为它有以下三个问题:
1700449751
1700449752 (1)stop方法是过时的
1700449753
1700449754 从Java编码规则来说,已经过时的方法不建议采用。
1700449755
1700449756 (2)stop方法会导致代码逻辑不完整
1700449757
1700449758 stop方法是一种“恶意”的中断,一旦执行stop方法,即终止当前正在运行的线程,不管线程逻辑是否完整,这是非常危险的。看如下的代码:
1700449759
1700449760 public static void main(String[]args)throws Exception{
1700449761
1700449762 //子线程
1700449763
1700449764 Thread thread=new Thread(){
1700449765
1700449766 @Override
1700449767
1700449768 public void run(){
1700449769
1700449770 try{
1700449771
1700449772 //子线程休眠1秒
1700449773
1700449774 Thread.sleep(1000);
1700449775
1700449776 }catch(InterruptedException e){
1700449777
1700449778 //异常处理
1700449779
1700449780 }
1700449781
1700449782 System.out.println(“此处代码不会执行”);
1700449783
1700449784 }
1700449785
1700449786 };
1700449787
1700449788 //启动线程
1700449789
1700449790 thread.start();
1700449791
1700449792 //主线程休眠0.1秒
1700449793
1700449794 Thread.sleep(100);
1700449795
1700449796 //子线程停止
[ 上一页 ]  [ :1.700449747e+09 ]  [ 下一页 ]