ScheduledThreadPoolExecutor.ScheduleWithFixedDelay 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提交一個週期性行動,該動作在給定的初始延遲後先被啟用,隨後在一次執行終止與下一次執行開始之間的指定延遲中啟用。
[Android.Runtime.Register("scheduleWithFixedDelay", "(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture;", "GetScheduleWithFixedDelay_Ljava_lang_Runnable_JJLjava_util_concurrent_TimeUnit_Handler")]
public virtual Java.Util.Concurrent.IScheduledFuture? ScheduleWithFixedDelay(Java.Lang.IRunnable? command, long initialDelay, long delay, Java.Util.Concurrent.TimeUnit? unit);
[<Android.Runtime.Register("scheduleWithFixedDelay", "(Ljava/lang/Runnable;JJLjava/util/concurrent/TimeUnit;)Ljava/util/concurrent/ScheduledFuture;", "GetScheduleWithFixedDelay_Ljava_lang_Runnable_JJLjava_util_concurrent_TimeUnit_Handler")>]
abstract member ScheduleWithFixedDelay : Java.Lang.IRunnable * int64 * int64 * Java.Util.Concurrent.TimeUnit -> Java.Util.Concurrent.IScheduledFuture
override this.ScheduleWithFixedDelay : Java.Lang.IRunnable * int64 * int64 * Java.Util.Concurrent.TimeUnit -> Java.Util.Concurrent.IScheduledFuture
參數
- command
- IRunnable
執行任務
- initialDelay
- Int64
延遲首次處決的時間
- delay
- Int64
一次執行結束與下一次執行開始之間的延遲
- unit
- TimeUnit
初始延遲與延遲參數的時間單位
傳回
一個預定未來,代表等待完成一系列重複任務。 未來的 get() 方法永遠不會正常回傳,且在任務取消或任務執行異常終止時會拋出例外。
實作
- 屬性
例外狀況
備註
提交一個週期性行動,該動作在給定的初始延遲後先被啟用,隨後在一次執行終止與下一次執行開始之間的指定延遲中啟用。
任務執行序列會無限持續,直到以下其中一個例外完成發生: <ul><li>該任務是 Future#cancel,透過回傳的 Future 明確取消。
<呼叫 li>方法 #shutdown 時,關機後繼續的 #getContinueExistingPeriodicTasksAfterShutdownPolicy 策略未設為真,或是呼叫方法 #shutdownNow ;同時也會導致任務取消。
<李>執行任務時會拋出例外。 此時 Future#get() get 呼叫返回的未來會拋出 ExecutionException,並以例外為原因。
</ul> 後續處決被壓制。 後續通話 Future#isDone isDone() 將返回 true。
Java 參考 java.util.concurrent.ScheduledThreadPoolExecutor.scheduleWithFixedDelay。
本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。