timer 類別
timer 傳訊區塊是單一目標 source_block,能夠在經過指定的時間長度或在特定時間間隔,將訊息傳送至它的目標。
template<
class _Type
>
class timer : public Concurrency::details::_Timer, public source_block<single_link_registry<ITarget<_Type>>>;
參數
- _Type
此區塊之輸出訊息的承載類型。
成員
公用建構函式
名稱 |
說明 |
---|---|
多載。 建構會在指定的間隔之後引發指定訊息的 timer 傳訊區塊。 |
|
終結 timer 傳訊區塊。 |
公用方法
名稱 |
說明 |
---|---|
會停止 timer 傳訊區塊。 如果是重複的 timer 傳訊區塊,即可由後續 start() 呼叫重新啟動。 在非重複計時器中,這和 stop 呼叫的效果相同。 |
|
啟動 timer 傳訊區塊。 呼叫這個之後的指定毫妙數,指定的值會向下傳播為 message。 |
|
會停止 timer 傳訊區塊。 |
受保護的方法
名稱 |
說明 |
---|---|
接受這個 timer 傳訊區塊所提供的訊息,將擁有權轉移至呼叫端。 |
|
會將擁有權轉移至呼叫端,使用 timer 先前提供並由目標保留的訊息。 |
|
通知已有新目標與這個 timer 傳訊區塊相連結的回呼。 |
|
嘗試提供 timer 區塊產生的訊息至所有連結的目標。 |
|
會釋放前一個訊息保留項目。(會覆寫 source_block::release_message)。 |
|
會保留先前由這個 timer 傳訊區塊所提供的訊息。(會覆寫 source_block::reserve_message)。 |
|
釋放保留項目之後繼續傳播。(會覆寫 source_block::resume_propagation)。 |
備註
如需詳細資訊,請參閱非同步訊息區。
繼承階層
timer
需求
標頭: agents.h
**命名空間:**concurrency