1. 程式人生 > >Timer任務定時器如何終止

Timer任務定時器如何終止

Timer類的物件有一個方法可以建立定時任務執行緒

schedule(TimerTask task, long delay)

但是自己實際操作後,發現程式執行完畢後,並不能終止這個定時任務執行緒。需要呼叫timer物件的cancel()方法才可以終止它。

所以,在TimerTask類的子類中,我們可以把Timer物件通過構造方法傳遞進去作為成員屬性,這樣就可以在定時任務完成後,對這個Timer的物件進行進一步的操作了。

當然,如果是匿名內部類的話,可以直接呼叫timer物件:

                Timer timer = new Timer();
		
		timer.schedule(new TimerTask() {
			
			@Override
			public void run() {
				// TODO Auto-generated method stub
				System.out.println("learn...");
				timer.cancel();
			}
		}, 3000);