nl:: Weave:: System:: Timer
#include <src/system/SystemTimer.h>
這是 Weave 系統 Layer 的內部類別,用於代表正在進行的一次性計時器。
摘要
應用程式層沒有實際的公用介面。用來取得目前系統時間的靜態公開方法專供內部使用。
繼承
沿用來源: nl::Weave::System::Object
公開類型 |
|
---|---|
Epoch
|
typedefuint64_t
代表以本機系統時區為準的訓練週期,通常是 POSIX 時間縮放。 |
OnCompleteFunct)(Layer *aLayer, void *aAppState, Error aError)
|
typedefvoid(*
|
公開屬性 |
|
---|---|
OnComplete
|
OnCompleteFunct
|
公開的靜態函式 |
|
---|---|
GetCurrentEpoch(void)
|
這個方法會傳回由系統睡眠時修正的目前週期 (以毫秒為單位)。
|
GetStatistics(nl::Weave::System::Stats::count_t & aNumInUse, nl::Weave::System::Stats::count_t & aHighWatermark)
|
void
|
IsEarlierEpoch(const Epoch & first, const Epoch & second)
|
bool
比較兩個 Timer::Epoch 值,如果第一個值早於第二個值,則傳回 true。
|
公用函式 |
|
---|---|
Cancel(void)
|
Error
此方法會取消初始化計時器物件,如果尚未啟動,則防止此計時器觸發。
|
Start(uint32_t aDelayMilliseconds, OnCompleteFunct aOnComplete, void *aAppState)
|
Error
這個方法會使用平台提供的基本計時器機制,註冊一次性計時器。
|
公開類型
Epoch 時間
uint64_t Epoch
代表以本機系統時區為準的訓練週期,通常是 POSIX 時間縮放。
單位取決於上下文。如果與 GetCurrentEpoch 傳回的值搭配使用,則單位為毫秒。
OnCompleteFunct
void(* OnCompleteFunct)(Layer *aLayer, void *aAppState, Error aError)
公開屬性
OnComplete
OnCompleteFunct OnComplete
公開的靜態函式
GetCurrentEpoch
Epoch GetCurrentEpoch( void )
GetStatistics
void GetStatistics( nl::Weave::System::Stats::count_t & aNumInUse, nl::Weave::System::Stats::count_t & aHighWatermark )
IsEarlierEpoch
bool IsEarlierEpoch( const Epoch & first, const Epoch & second )
比較兩個 Timer::Epoch 值,如果第一個值早於第二個值,則傳回 true。
系統會呼叫靜態 API,用來比較 2 個時間值。此 API 會假設,如果 2 個樣本之間發生計時器包裝,而 2 個輸入值之間的差異只會超過 Epoch 紀元純範圍的一半,這個 API 就會嘗試計算計時器倒數。
詳細說明 | |
---|---|
傳回 |
如果第一個參數早於第二個參數,則傳回 true,否則傳回 false。
|
公用函式
取消
Error Cancel( void )
此方法會取消初始化計時器物件,如果尚未啟動,則防止此計時器觸發。
詳細說明 | |||
---|---|---|---|
傳回值 |
|
開始
Error Start( uint32_t aDelayMilliseconds, OnCompleteFunct aOnComplete, void *aAppState )
這個方法會使用平台提供的基本計時器機制,註冊一次性計時器。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|