簡單整理,方便後續查閱
前言
AndroidStudio安裝了阿里編碼規範插件後,在代碼編寫的時候,遇到一些不規範的或者需要優化的,都會提示,對編寫一些更易閱讀和使用的代碼還是很有幫助,今天在做延時操作的時候,以前基本使用 Timer
,但是阿里編碼規範提示 使用 ScheduleExecutorService 代替Timer
, 特去查閱了一下 ScheduledExecutorService
,順便整理了一下基本用法,先佔坑,後續再詳細的去整理。
正文
1、schedule(Runnable command, long delay, TimeUnit unit)
command
: 需要執行的任務
delay
:任務執行需要延遲的時間
unit
:時間單位
2、scheduleAtFixedRate(Runnable command, long initialDelay, long period, TimeUnit unit)
command
: 需要執行的任務
initialDelay
:第一次執行延遲的時間
period
:間隔週期
unit
:時間單位
- 包含首次延遲的週期性執行任務,第一次執行:delay+period,第二次:delay+2*period,以此類推...
- 停止:異常停止執行,主動調用停止方法
- 如果某一個週期執行時間超過設定的period,則後續順延
3、scheduleWithFixedDelay(Runnable command, long initialDelay, long delay, TimeUnit unit)
command
: 需要執行的任務
initialDelay
:第一次執行延遲的時間
period
:週期之間的延遲,間隔
unit
:前兩個參數的單位
- 週期性執行任務:第一次執行:initialDelay+delay,第二次:initialDelay+2*delay,以此類推...
- 停止:異常停止執行,主動調用停止方法
- 不順延