zoukankan      html  css  js  c++  java
  • 笔记20200517:多线程【线程停止】

     ①建议线程正常停止--->利用次数,不建议死循环
    ②建议使用标志位----->设置一个标志位
    ③不要使用stop或destroy等过时或者JDK不建议使用的方法
    package com.chengguo.线程;
    
    import java.util.Scanner;
    
    /**
     * 测试stop
     * ①建议线程正常停止--->利用次数,不建议死循环
     * ②建议使用标志位----->设置一个标志位
     * ③不要使用stop或destroy等过时或者JDK不建议使用的方法
     */
    public class Demo_20200509006_StopThread implements Runnable {
        //设置一个标志位
        private boolean flag = true;
    
        @Override
        public void run() {
            int i = 0;
            while (flag)
                System.out.println("run……" + i++);
        }
    
        //设置一个公开的方法停止线程,转换标志位
        public void stop() {
            this.flag = false;
        }
    
        public static void main(String[] args) {
            //插入键盘输入的知识
            Scanner scanner = new Scanner(System.in);
            System.out.println("输入你想要停止的输:");
            int enterNum = scanner.nextInt();
    
            Demo_20200509006_StopThread dst = new Demo_20200509006_StopThread();
    
            new Thread(dst).start();
    
    
            for (int i = 0; i < 1000; i++) {
    
                System.out.println("main:" + i);
    
                if (i == enterNum) {
                    //调用stop方法切换标志位,让线程停止
                    dst.stop();
                    System.out.println("线程停止……");
                }
            }
        }
    }
  • 相关阅读:
    串学习笔记
    C深度剖析学习笔记
    记英语单词ag
    树学习笔记
    如何做好项目总结
    易学队第二次团队会议
    易学队第四次团队会议
    易学队第五次团队会议
    易学队第一次团队会议
    易学队第三次团队会议
  • 原文地址:https://www.cnblogs.com/sadfoo/p/12996606.html
Copyright © 2011-2022 走看看