共用方式為


propagator_block 類別

propagator_block 類別是同時為來源和目標之訊息區塊的抽象基底類別。它結合 source_blocktarget_block 類別的功能。

template<
   class _TargetLinkRegistry,
   class _SourceLinkRegistry,
   class _MessageProcessorType = ordered_message_processor<typename _TargetLinkRegistry::type::type>
>
class propagator_block : public source_block<_TargetLinkRegistry, _MessageProcessorType>, public ITarget<typename _SourceLinkRegistry::type::source_type>;

參數

  • _TargetLinkRegistry
    要用來保留目標連結的連結登錄。

  • _SourceLinkRegistry
    要用來保留來源連結的連結登錄。

  • _MessageProcessorType
    訊息處理的處理器型別。

Members

Dd504864.collapse_all(zh-tw,VS.110).gif公用 Typedefs

名稱

描述

source_iterator

這個 propagator_blocksource_link_manager 的 Iterator 的型別。

Dd504864.collapse_all(zh-tw,VS.110).gif公用建構函式

名稱

描述

propagator_block::propagator_block 建構函式

建構 propagator_block 物件。

propagator_block::~propagator_block 解構函式

終結 propagator_block 物件。

Dd504864.collapse_all(zh-tw,VS.110).gif公用方法

名稱

描述

propagator_block::propagate 方法

以非同步方式將訊息從來源區塊傳遞到這個目標區塊。

propagator_block::send 方法

以同步方式啟始這個區塊的訊息。由 ISource 區塊呼叫。當此函式完成時,已將訊息傳播至區塊中。

Dd504864.collapse_all(zh-tw,VS.110).gif受保護的方法

名稱

描述

propagator_block::decline_incoming_messages 方法

表示應拒絕新訊息的區塊。

propagator_block::initialize_source_and_target 方法

初始化基底物件。尤其必須初始化 message_processor 物件。

propagator_block::link_source 方法

連結指定的來源區塊與這個 propagator_block 物件。

propagator_block::process_input_messages 方法

處理程序的輸入的訊息。它僅適用於傳播程式區塊,衍生自 source_block (會覆寫 source_block::process_input_messages。)

propagator_block::propagate_message 方法

在衍生類別中被覆寫時,這個方法會以非同步方式從 ISource 區塊傳遞訊息到這個 propagator_block 物件。會於來源區塊呼叫時由 propagate 方法叫用。

propagator_block::register_filter 方法

註冊會在收到每個訊息時叫用的篩選方法。

propagator_block::remove_network_links 方法

移除這個 propagator_block 物件中的所有來源與目標網路連結。

propagator_block::send_message 方法

在衍生類別中被覆寫時,這個方法會以同步方式從 ISource 區塊傳遞訊息到這個 propagator_block 物件。會於來源區塊呼叫時由 send 方法叫用。

propagator_block::unlink_source 方法

將指定的來源區塊與這個 propagator_block 物件中斷連結。

propagator_block::unlink_sources 方法

將所有來源區塊與這個 propagator_block 物件中斷連結。(會覆寫 ITarget::unlink_sources)。

備註

為避免多重繼承,propagator_block 類別會自 source_block 類別和 ITarget 抽象類別繼承。target_block 類別的大多數功能是在這裡複寫的。

繼承階層架構

ISource

ITarget

source_block

propagator_block

需求

標頭: agents.h

Namespace: 並行存取

請參閱

參考

concurrency 命名空間

source_block 類別

ITarget 類別