zoukankan      html  css  js  c++  java
  • 观测线程状态

    观测线程状态

    package com.hao.Demo01;
    //观测线程状态
    /*线程状态。 线程可以处于以下状态之一:
    NEW  尚未启动的线程处于此状态。
    RUNNABLE  在Java虚拟机中执行的线程处于此状态。
    BLOCKED  被阻塞等待监视器锁定的线程处于此状态。
    WAITING  正在等待另一个线程执行特定动作的线程处于此状态。
    TIMED_WAITING 正在等待另一个线程执行动作达到指定等待时间的线程处于此状态。
    TERMINATED 已退出的线程处于此状态。
    */
    public class TestState {
    
        public static void main(String[] args) {
            Thread thread = new Thread(()->{
                for (int i = 0; i < 5; i++) {
                    try {
                        Thread.sleep(1000);
                    } catch (InterruptedException e) {
                        e.printStackTrace();
                    }
                }
                System.out.println("///////////////////////");
            });
    
            //观察状态
            Thread.State state = thread.getState();
            System.out.println(state);
    
            //观察启动后
            thread.start();
            state = thread.getState();
            System.out.println(state);
    
            while (state != Thread.State.TERMINATED){
                //只要线程不终止,就一直输出状态
                try {
                    Thread.sleep(100);
                } catch (InterruptedException e) {
                    e.printStackTrace();
                }
                state = thread.getState();//更新状态
                System.out.println(state);//输出状态
            }
        }
    }
  • 相关阅读:
    ASP.Net核心对象HttpRequest
    HTTP状态码和常用对照表
    Http协议之Get和Post的区别
    Http协议之Request和Response
    HTTP协议的几个概念
    表单内容提交到数据库案例
    关于表单提交的规则
    HttpHandler简介
    DHCP(五)
    DHCP(四)
  • 原文地址:https://www.cnblogs.com/haohaoxuexio/p/14396649.html
Copyright © 2011-2022 走看看