ScheduledThreadPoolExecutor.ScheduleAtFixedRate 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提交一個定期動作,在指定的初始延遲之後先啟用,之後再與指定的期間一起啟用;也就是說,執行會在 之後 initialDelay
開始,然後 initialDelay + period
、、 initialDelay + 2 * period
等等。
[Android.Runtime.Register("scheduleAtFixedRate", "(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture;", "GetScheduleAtFixedRate_Ljava_lang_Runnable_JJLjava_util_concurrent_TimeUnit_Handler")]
public virtual Java.Util.Concurrent.IScheduledFuture? ScheduleAtFixedRate (Java.Lang.IRunnable? command, long initialDelay, long period, Java.Util.Concurrent.TimeUnit? unit);
[<Android.Runtime.Register("scheduleAtFixedRate", "(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture;", "GetScheduleAtFixedRate_Ljava_lang_Runnable_JJLjava_util_concurrent_TimeUnit_Handler")>]
abstract member ScheduleAtFixedRate : Java.Lang.IRunnable * int64 * int64 * Java.Util.Concurrent.TimeUnit -> Java.Util.Concurrent.IScheduledFuture
override this.ScheduleAtFixedRate : Java.Lang.IRunnable * int64 * int64 * Java.Util.Concurrent.TimeUnit -> Java.Util.Concurrent.IScheduledFuture
參數
- command
- IRunnable
要執行的工作
- initialDelay
- Int64
延遲第一次執行的時間
- period
- Int64
後續執行之間的期間
- unit
- TimeUnit
initialDelay 和period 參數的時間單位
傳回
實作
- 屬性
例外狀況
備註
提交一個定期動作,在指定的初始延遲之後先啟用,之後再與指定的期間一起啟用;也就是說,執行會在 之後 initialDelay
開始,然後 initialDelay + period
、、 initialDelay + 2 * period
等等。
工作執行順序會無限期地繼續執行,直到發生下列其中一個例外完成為止: <ul><li>工作是 Future#cancel,透過傳回的未來明確取消。 <會呼叫 li>方法 #shutdown
,並 #getContinueExistingPeriodicTasksAfterShutdownPolicy 原則,指出是否要在關機後繼續設定為 true,或呼叫 方法 #shutdownNow
;也會導致工作取消。 <li>工作的執行會擲回例外狀況。 在此情況下,呼叫 Future#get() get
傳回的未來將會擲回 ExecutionException
,並將例外狀況視為其原因。 </ul> 後續執行會隱藏。 在傳回的未來上對 的後續呼叫 Future#isDone isDone()
將會傳回 true
。
如果此工作的任何執行時間超過其期間,後續執行可能會遲到開始,但不會同時執行。
此頁面的部分是根據 Android 開放原始碼專案所建立和共用的工作進行修改,並根據 Creative Commons 2.5 屬性授權中所述的詞彙使用。