鴻蒙OS TimerTask

2022-08-09 15:19 更新

TimerTask

java.lang.Object

|---java.util.TimerTask

public abstract class TimerTask
extends Object
implements Runnable

可以由 Timer 安排一次或重復(fù)執(zhí)行的任務(wù)。

構(gòu)造函數(shù)摘要

修飾符 構(gòu)造函數(shù) 描述
protected TimerTask() 創(chuàng)建一個(gè)新的計(jì)時(shí)器任務(wù)。

方法總結(jié)

修飾符和類型 方法 描述
boolean cancel() 取消此計(jì)時(shí)器任務(wù)。
abstract void run() 此計(jì)時(shí)器任務(wù)要執(zhí)行的操作。
long scheduledExecutionTime() 返回此任務(wù)最近一次實(shí)際執(zhí)行的計(jì)劃執(zhí)行時(shí)間。
從類 java.lang.Object 繼承的方法
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

構(gòu)造函數(shù)詳細(xì)信息

TimerTask

protected TimerTask()

創(chuàng)建一個(gè)新的計(jì)時(shí)器任務(wù)。

方法詳情

run

public abstract void run()

此計(jì)時(shí)器任務(wù)要執(zhí)行的操作。

指定者:

在接口 Runnable 中運(yùn)行

cancel

public boolean cancel()

取消此計(jì)時(shí)器任務(wù)。 如果任務(wù)已安排為一次性執(zhí)行但尚未運(yùn)行,或者尚未安排,則它永遠(yuǎn)不會(huì)運(yùn)行。 如果任務(wù)已被安排重復(fù)執(zhí)行,它將永遠(yuǎn)不會(huì)再次運(yùn)行。 (如果此調(diào)用發(fā)生時(shí)任務(wù)正在運(yùn)行,則任務(wù)將運(yùn)行到完成,但永遠(yuǎn)不會(huì)再次運(yùn)行。)

請注意,從重復(fù)計(jì)時(shí)器任務(wù)的 run 方法中調(diào)用此方法絕對保證計(jì)時(shí)器任務(wù)不會(huì)再次運(yùn)行。

該方法可能會(huì)被重復(fù)調(diào)用; 第二次和后續(xù)調(diào)用無效。

返回:

如果此任務(wù)已安排為一次性執(zhí)行但尚未運(yùn)行,或者此任務(wù)已安排為重復(fù)執(zhí)行,則為 true。 如果任務(wù)被調(diào)度為一次性執(zhí)行并且已經(jīng)運(yùn)行,或者如果任務(wù)從未被調(diào)度,或者如果任務(wù)已經(jīng)被取消,則返回 false。 (簡單地說,如果該方法阻止了一個(gè)或多個(gè)預(yù)定執(zhí)行的發(fā)生,則該方法返回 true。)

scheduledExecutionTime

public long scheduledExecutionTime()

返回此任務(wù)最近一次實(shí)際執(zhí)行的計(jì)劃執(zhí)行時(shí)間。 (如果在任務(wù)執(zhí)行過程中調(diào)用此方法,則返回值是當(dāng)前任務(wù)執(zhí)行的預(yù)定執(zhí)行時(shí)間。)

此方法通常從任務(wù)的 run 方法中調(diào)用,以確定任務(wù)的當(dāng)前執(zhí)行是否足夠及時(shí)以保證執(zhí)行計(jì)劃的活動(dòng):

   public void run() {
       if (System.currentTimeMillis() - scheduledExecutionTime() >=
           MAX_TARDINESS)
               return;  // Too late; skip this execution.
       // Perform the task
   }

此方法通常不與固定延遲執(zhí)行重復(fù)任務(wù)結(jié)合使用,因?yàn)樗鼈兊挠?jì)劃執(zhí)行時(shí)間允許隨時(shí)間漂移,因此不是非常重要。

返回:

計(jì)劃最近執(zhí)行此任務(wù)的時(shí)間,采用 Date.getTime() 返回的格式。 如果任務(wù)尚未開始其第一次執(zhí)行,則返回值未定義。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號