小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

java中sleep()的用法(毫秒)

 wusiqi111 2018-03-30

Thread.sleep(long millis)和Thread.sleep(long millis, int nanos)靜態(tài)方法強制當前正在執(zhí)行的線程休眠(暫停執(zhí)行),以“減慢線程”。
當線程睡眠時,它睡在某個地方,在蘇醒之前不會返回到可運行狀態(tài)。
當睡眠時間到期,則返回到可運行狀態(tài)。
 
線程睡眠的原因:線程執(zhí)行太快,或者需要強制進入下一輪,因為Java規(guī)范不保證合理的輪換。
 
睡眠的實現(xiàn):調(diào)用靜態(tài)方法。
[java] view plain copy
  1. try {  
  2.     Thread.sleep(1000);  
  3. catch (InterruptedException e) {  
  4.     e.printStackTrace();   
  5. }  
睡眠的位置:為了讓其他線程有機會執(zhí)行,可以將Thread.sleep()的調(diào)用放線程run()之內(nèi)。這樣才能保證該線程執(zhí)行過程中會睡眠。
[java] view plain copy
  1. public class TestSleep {  
  2.    
  3.   public static void main(String[] args) {  
  4.      
  5.     MyThread2 t1 = new MyThread2("TestSleep");  
  6.     t1.start();  
  7.         
  8.      for(int i=0 ; i <10; i++)  
  9.               System.out.println("I am Main Thread");  
  10.    }  
  11.  }  
  12.    
  13.  class MyThread2 extends Thread {  
  14.     
  15.     MyThread2(String s) {  
  16.      super(s);  
  17.      }  
  18.        
  19.   public void run() {  
  20.     for(int i = 1; i <= 10; i++) {  
  21.      System.out.println("I am "+getName());  
  22.      try {  
  23.       sleep(1000); //暫停,每一秒輸出一次  
  24.       }catch (InterruptedException e) {  
  25.       return;  
  26.      }  
  27.      }  
  28.    }  
  29.   }  


注意:
1、線程睡眠是幫助所有線程獲得運行機會的最好方法。
2、線程睡眠到期自動蘇醒,并返回到可運行狀態(tài),不是運行狀態(tài)。sleep()中指定的時間是線程不會運行的最短時間。因此,sleep()方法不能保證該線程睡眠到期后就開始執(zhí)行。
3、sleep()是靜態(tài)方法,只能控制當前正在運行的線程。
實例二:一個計數(shù)器,計數(shù)到100,在每個數(shù)字之間暫停1秒,每隔10個數(shù)字輸出一個字符串
[java] view plain copy
  1. public class MyThread extends Thread {  
  2.     public void run() {  
  3.         for (int i = 0; i < 100; i++) {  
  4.             if ((i) % 10 == 0) {  
  5.                 System.out.println("-------" + i);  
  6.             }  
  7.             System.out.print(i);  
  8.             try {  
  9.                 Thread.sleep(1000);  
  10.                 System.out.print("    線程睡眠1秒!\n");  
  11.             } catch (InterruptedException e) {  
  12.                 e.printStackTrace();  
  13.             }  
  14.         }  
  15.     }  
  16.     public static void main(String[] args) {  
  17.         new MyThread().start();  
  18.     }  
  19. }  

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多