android Timer TimerTask用法筆記

來源:互聯網
上載者:User

標籤:

 Android中經常會遇到執行一些周期性定時執行的任務。初學的時候經常會使用Thread.sleep()方法。在android中,有Timer可以專門幹這個事情。

先看看Timer.class中都是些什麼。看到前幾行代碼的時候就應該知道了....Timer中有個靜態內部類:TimerImplTimerImpl有個靜態內部類:TimerHeapTimerImpe繼承Thread,用來實現具體的任務執行內容。TimerHeap定義了一個TimerTask的數組,用來管理多個TimerTask的分配。使用靜態內部類的好處,是可以多個Timer對象可以共用。 下面看看TimerTask.class 好吧,比Timer還簡單,就是Runnable的一個實現。只不過多了幾個對象lock:對象鎖,在Timer中對TimerTask操作的時候,保證同步,安全執行緒。cancelled:標誌變數,當前TimerTask是否已經被取消執行。when:Timer執行TimerTask時,延時多少時間。period:Timer執行TimerTask時,周期時間。fixedRate:是否已固定頻率執行,比如一個TimerTask,執行循環為3秒,可能一個任務3秒內沒有執行完畢,fixedTate為true,那麼接下來的任務依然會執行。如果為fasle,接下來的任務會等到之前的執行完畢後,繼續周期執行。 使用方法也很簡單: 
  最後一行代碼:timer.schedule(task,1000,3000)意思是:在1秒之後  以周期為3秒 執行task。

android Timer TimerTask用法筆記

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.