線程調度二(sleep的用法)

一、建立Wait類,讓當前線程休眠java

package com.ljb.app.thread;
/**
 * 當前線程等待時間
 * @author LJB
 * @version 2015年3月9日
 */
public class Wait {
 public static void bySec (long s) {
  for (int i = 0 ; i < s ; i++) {
   System.out.println(i + 1 + "秒");
   
   try {
    Thread.sleep(1000);
   } catch (InterruptedException e) {
    e.printStackTrace();
   }
  }
 }
}

二、建立測試類app

package com.ljb.app.thread;
/**
 * 調用休眠方法,讓主線程休眠5秒
 * @author LJB
 * @version 2015年3月9日
 */
public class TestSleep {
 /**
  * @param args
  */
 public static void main(String[] args) {
  System.out.println("wait");
  
  Wait.bySec(5);
  
  System.out.println("start");
 }
}

運行結果:測試

wait
1秒
2秒
3秒
4秒
5秒
start
三、建立新線程NewThead
spa

package com.ljb.app.thread;
/**
 * 建立新線程,測試sleep運行後,該線程是否運行
 * @author LJB
 * @version 2015年3月9日
 */
public class NewThead extends Thread{
 
 public void run () {
  for (int i = 0 ; i < 5 ; i++) {
    System.out.println(getName() + i);
  }
 }
}

四、測試類線程

package com.ljb.app.thread;
/**
 * 調用休眠方法,讓主線程休眠5秒
 * @author LJB
 * @version 2015年3月9日
 */
public class TestSleep {
 /**
  * @param args
  */
 public static void main(String[] args) {
  // 實例化
  Thread newThread = new NewThead();
  
  System.out.println("wait");
  
  // 啓動
  newThread.start();
  
  Wait.bySec(5);
  
  System.out.println("start");
 }
}

運行結果:code

wait
1秒
Thread-00
Thread-01
Thread-02
Thread-03
Thread-04
2秒
3秒
4秒
5秒
start
描述:sleep只阻止當前線程,並釋放系統資源,其他可運行線程運行
資源

相關文章
相關標籤/搜索