zoukankan      html  css  js  c++  java
  • 使用interrupt()方法来中断线程并使用 isInterrupted() 方法来判断线程是否已中断:

    /**
     * @description
     **/
    public class InterruptTest2 implements Runnable {
    
        public static void main(String[] args) {
            InterruptTest2 test = new InterruptTest2();
            Thread t = new Thread(test);
            t.start();
            try {
                Thread.sleep(2000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
            System.out.println("in main() - 中断其他线程");
            t.interrupt();
            System.out.println("in main() - 离开");
        }
    
        @Override
        public void run() {
            System.out.println("");
            try {
                System.out.println("in run() - 将运行 work2() 方法");
                work2();
                System.out.println("in run() - 从 work2() 方法回来");
            } catch (InterruptedException e) {
                System.out.println("in run() - 中断 work2() 方法");
                return;
            }
            System.out.println("in run() - 休眠后执行");
            System.out.println("in run() - 正常离开");
        }
    
        public void work2() throws InterruptedException {
            while (true) {
                if (Thread.currentThread().isInterrupted()) {
                    System.out.println("C isInterrupted()=" + Thread.currentThread().isInterrupted());
                    Thread.sleep(2000);
                    System.out.println("D isInterrupted()=" + Thread.currentThread().isInterrupted());
                }
            }
        }
    }
    

      

    in run() - 将运行 work2() 方法
    in main() - 中断其他线程
    in main() - 离开
    C isInterrupted()=true
    in run() - 中断 work2() 方法
    

      

  • 相关阅读:
    VS 快捷键
    vue 本地环境API代理设置和解决跨域
    vue-cli 项目配置
    stylus 使用小技巧(1)
    vue 初始化rem
    vue element-ui NavMenu错位问题
    vue 数字输入组件
    vue X-Template
    vue 异步组件
    vue 非父子组件通信
  • 原文地址:https://www.cnblogs.com/Andrew520/p/12097645.html
Copyright © 2011-2022 走看看