mFrame
載入中...
搜尋中...
無符合項目
ufm::sys::Timer 類別 參考文件

系統計時器 更多...

#include <Timer.h>

類別ufm::sys::Timer的繼承圖:
ufm::lang::Object ufm::lang::Interface

公開方法(Public Methods)

 Timer (void)
 建立新的計時器物件
 
virtual bool cancel (void)
 取消計時器任務
 
virtual bool isRunning (void)
 檢查計時器是否正在運作
 
virtual bool schedule (ufm::func::Runnable &task, uint32 delay)
 排程任務於指定延遲後執行
 
virtual bool scheduleAtFixedRate (ufm::func::Runnable &task, uint32 delay)
 以固定頻率排程任務
 
- 公開方法(Public Methods) 繼承自 ufm::lang::Object
void * operator new (size_t n)
 使用運算子 new 分配記憶體
 
void * operator new (size_t n, void *p)
 在指定記憶體上調用運算子 new
 
virtual ufm::lang::ObjectgetObject (void) override
 取得對應的 Object 物件
 
void delay (int milliseconds) const
 延遲指定的毫秒數進行執行緒等待
 
bool equals (Object *object) const
 判斷與另一物件是否為相同參照(指標型態比較)
 
bool equals (Object &object) const
 判斷與另一物件是否為相同參照(參照型態比較)
 
void wait (void) const
 使當前線程等待直到被通知
 
bool wait (int timeout) const
 等待通知或超時
 
bool yield (void) const
 讓執行緒讓渡控制權給同優先權的下一個執行緒
 
int lock (void) const
 核心鎖定,鎖定期間禁止線程切換
 
int unlock (void) const
 核心解鎖
 
ufm::sys::ThreadcurrentThread (void) const
 取得當前執行緒指標
 
virtual int hashcode (void) const
 返回對象的哈希碼值。支持這種方法是為了散列表,如HashMap提供的那樣。
 
- 公開方法(Public Methods) 繼承自 ufm::lang::Interface
virtual ~Interface (void)=default
 虛擬析構函式
 

詳細描述

系統計時器

提供執行緒安全的計時器功能,支援一次性和週期性任務執行。 可在指定延遲後執行任務,或以固定頻率週期性執行。 所有計時器任務都可以透過 cancel 方法取消。

特性:

  • 支援單次和週期性執行模式
  • 提供精確的時間控制
  • 執行緒安全設計
  • 可動態調整執行週期
計時器實例在執行階段會消耗系統資源,使用完畢後應明確取消
1.0.0

建構子與解構子說明文件

◆ Timer()

ufm::sys::Timer::Timer ( void )

建立新的計時器物件

初始化計時器物件至預設停止狀態,設定內部計數器和狀態旗標。 建立後的計時器需要透過 schedule 或 scheduleAtFixedRate 方法啟動。

計時器建立後處於非執行狀態,不會消耗系統計時資源

函式成員說明文件

◆ cancel()

virtual bool ufm::sys::Timer::cancel ( void )
virtual

取消計時器任務

停止計時器的執行,取消排程的任務。若任務正在執行時呼叫, 當前執行將完成但不會再次執行。計時器會回到閒置狀態,可重新排程。

傳回值
true 取消成功,計時器已停止
false 取消失敗或計時器未處於執行狀態

◆ isRunning()

virtual bool ufm::sys::Timer::isRunning ( void )
virtual

檢查計時器是否正在運作

判斷計時器是否在活動狀態,即已啟動且未被取消。 可用於在執行其他操作前確認計時器狀態。

傳回值
true 計時器正在運作中,等待或正在執行任務
false 計時器未啟動或已停止

◆ schedule()

virtual bool ufm::sys::Timer::schedule ( ufm::func::Runnable & task,
uint32 delay )
virtual

排程任務於指定延遲後執行

安排指定的任務在延遲時間後執行一次。若計時器已在使用中, 此操作將取消先前的任務並重新排程。計時器將在指定延遲後 自動執行任務的 run() 方法。

參數
task要執行的任務物件,必須實現 Runnable 介面
delay執行前的延遲時間(毫秒)
傳回值
true 排程成功,計時器已啟動
false 排程失敗,可能是參數無效

◆ scheduleAtFixedRate()

virtual bool ufm::sys::Timer::scheduleAtFixedRate ( ufm::func::Runnable & task,
uint32 delay )
virtual

以固定頻率排程任務

安排指定任務在延遲後開始首次執行,之後以固定間隔重複執行。 任務會持續執行直到計時器被取消。每次執行結束後,計時器將 自動排程下一次執行,間隔為指定的延遲時間。

參數
task要執行的任務物件,必須實現 Runnable 介面
delay首次執行前的延遲時間及後續的執行間隔(毫秒)
傳回值
true 排程成功,計時器已啟動並設為週期模式
false 排程失敗,可能是參數無效

此類別(class) 文件是由下列檔案中產生: