• Java 实例 – 状态监测


    [

    Java 实例 - 状态监测

    Java 实例
    以下实例演示了如何通过继承 Thread 类并使用 currentThread.getName() 方法来监测线程的状态:

    Main.java 文件

    class MyThread extends Thread{
    boolean waiting= true;
       boolean ready= false;
       MyThread() {
    }
    public void run() {
    String thrdName = Thread.currentThread().getName();
          System.out.println(thrdName + " starting.");
          while(waiting)
    System.out.println("waiting:"+waiting); 
          System.out.println("waiting...");
          startWait(); 
          try {
    Thread.sleep(1000);
          }
    catch(Exception exc) {
    System.out.println(thrdName + " interrupted.");
          }
    System.out.println(thrdName + " terminating.");
       }
    synchronized void startWait() {
    try {
    while(!ready) wait();
          }
    catch(InterruptedException exc) {
    System.out.println("wait() interrupted");
          }
    }
    synchronized void notice() {
    ready = true;
          notify();
       }
    }
    public class Main {
    public static void main(String args[])
    throws Exception{
    MyThread thrd = new MyThread();
          thrd.setName("MyThread #1");
          showThreadStatus(thrd);
          thrd.start();
          Thread.sleep(50);
          showThreadStatus(thrd);
          thrd.waiting = false;
          Thread.sleep(50); 
          showThreadStatus(thrd);
          thrd.notice();
          Thread.sleep(50);
          showThreadStatus(thrd);
          while(thrd.isAlive())
    System.out.println("alive");
          showThreadStatus(thrd);
       }
    static void showThreadStatus(Thread thrd) {
    System.out.println(thrd.getName() + "Alive:=" + thrd.isAlive() + " State:=" + thrd.getState());
       }
    }
    

    以上代码运行输出结果为:

    
    ……
    
    alive
    
    alive
    
    MyThread #1 terminating.
    
    alive
    
    ……
    
    

    Java 实例

    ]
    转载请保留页面地址:https://www.breakyizhan.com/java/23967.html
  • 相关阅读:
    英语口语交际最常用短语
    家庭英语口语800句
    C#基础概念二十五问
    英语常用日常交际用语
    系统进程总结
    虚拟键盘驱动程序
    系统程序员成长计划拥抱变化(上)
    系统程序员成长计划谁动了你的隐私(上)
    系统程序员成长计划谁动了你的隐私(下)
    系统程序员成长计划Write once, run anywhere(WORA)(上)
  • 原文地址:https://www.cnblogs.com/breakyizhan/p/13295506.html
Copyright © 2020-2023  润新知