java實作延時的方法:
1、使用Timer類別
Timer類別負責排程任務的功能,也即指定的時間開始執行某個任務。 Timer類別的作用只是用來設定計畫任務。
Timer類別的schedule方法可以依照時間計畫執行程式。
public static void main(String[] args) { Timer timer = new Timer(); TimerTask timerTask = new MyTimerTask(); timer.schedule(timerTask, 10000, 10000); }
schedule方法中需要傳入一個TimerTask類型的對象,該物件需要繼承並實作TimerTask類別的run方法,或以匿名內部類別的方式實作run方法。 schedule的第二個參數為程式第一次執行run方法的延遲時間,第三個參數為執行完第一次run方法後延遲迴圈執行run方法的時間。
public class MyTimerTask extends TimerTask{ String userStatus = null; String key1 = null; String key2 = null; Jedis jedis = new Jedis("192.168.16.100",6379); @Override public void run() { // TODO Auto-generated method stub key1 = jedis.get("key1_13681033074"); key2 = jedis.get("key2_13681033074"); if(key1 != null && key2 == null){ userStatus = "进入"; } if(key1 != null && key2 != null){ if(key1.equals(key2)){ userStatus = "驻留"; }else { userStatus = "进入"; } } if(key1 == null && key2 != null){ userStatus = "离开"; } System.out.println(userStatus); } }
實現了run方法後就會根據schedule設定的時間計畫來執行。 schedule的參數也可以不要循環時間,只延遲執行一次,還有多種重載的schedule方法,可以依照實際情況使用。
2、使用Thread
在Java中有時候需要讓程式暫停一點時間,稱為延遲。普通延時用Thread.sleep(int)方法,這很簡單。它將當前線程掛起指定的毫秒數。如
try { Thread.currentThread().sleep(1000);//毫秒 } catch(Exception e){}
更多java知識請關注java基礎教學欄位。
以上是java怎麼實現延時的詳細內容。更多資訊請關注PHP中文網其他相關文章!