Destroy: JDK未实现该方法。
Stop:中止线程并且清除监控器锁的信息,但可能导致线程安全问题,JDK已废弃。


- 程序执行结果 
没有保证同步代码块里面数据的一致性,破坏了线程安全。
2 真正的线程终止2.1 interrupt
如果目标线程在调用Object类的
- wait() 
或Thread类的
- join() 
- sleep(long, int) 
时被阻塞,那么Interrupt会生效, 该线程的中断状态将被清除,拋InterruptedException。
如果目标线程是被I/O或者NIO中的Channel所阻塞,同样,I/O操作会被中断或者返回特殊异常值。达到终止线程的目的。
如果以上条件都不满足,则会设置此线程的中断状态。
对于上面的示例
- stop改成interrupt 
- 最终输出为“i=1 j=1”,数据一致 
2.2 标志位
- 即代码中,增加一个判断,来控制线程执行的中止 
 
 
                     
            
        













 
                    

 
                 
                    