• 66.Java线程生命周期


    线程生命周期

    任何事物都是生命周期,线程也是,

    1. 正常终止  当线程的run()执行完毕,线程死亡。

    2. 使用标记停止线程

    注意:Stop方法已过时,就不能再使用这个方法。

    如何使用标记停止线程停止线程。

    开启多线程运行,运行代码通常是循环结构,只要控制住循环,就可以让run方法结束,线程就结束。

    class StopThread implements Runnable {
        public boolean tag = true;
        @Override
        public void run() {
            int i = 0;
    
            while (tag) {
                i++;
                System.out.println(Thread.currentThread().getName() + "i:" + i);
            }
        }
    }
    public class Demo8 {
        public static void main(String[] args) {
            StopThread st = new StopThread();
            Thread th = new Thread(st, "线程1");
            th.start();
            for (int i = 0; i < 100; i++) {
                if (i == 50) {
                    System.out.println("main i:" + i);
                    st.tag = false;
                }
            }
        }
    }

    上述案例中定义了一个计数器i,用来控制main方法(主线程)的循环打印次数,在i到50这段时间内,两个线程交替执行,当计数器变为50,程序将标记改为false,也就是终止了线程1的while循环,run方法结束,线程1也随之结束。注意:当计数器i变为50的,将标记改为false的时候,cpu不一定马上回到线程1,所以线程1并不会马上终止。

    author@nohert
  • 相关阅读:
    [SQL Server]如何激活一个账号
    sqlcmd命令详解
    SQL Server Express 2008 安装程序
    SharePoint中的本地化(Localization)
    2009十大企业应用产品
    2010年10大战略技术
    十个理由促使小企业敢于触碰“云计算”
    如何改进网站性能
    sqlcmd详细示例
    VMware网络配置详解
  • 原文地址:https://www.cnblogs.com/gzgBlog/p/13599327.html
Copyright © 2020-2023  润新知