source_link_manager 类
source_link_manager
对象管理到 ISource
块的消息块网络链接。
语法
template<class _LinkRegistry>
class source_link_manager;
参数
_LinkRegistry
网络链接注册表。
成员
公共 Typedef
名称 | 描述 |
---|---|
const_pointer |
一种类型,该类型提供指向 source_link_manager 对象中 const 元素的指针。 |
const_reference |
一种类型,此类型提供对用于读取和执行 const 操作的 source_link_manager 对象中存储的 const 元素的引用。 |
iterator |
一种类型,此类型提供可读取或修改 source_link_manager 对象中的任何元素的迭代器。 |
type |
由 source_link_manager 对象管理的链接注册表的类型。 |
公共构造函数
名称 | 描述 |
---|---|
source_link_manager | 构造 source_link_manager 对象。 |
~source_link_manager 析构函数 | 销毁 source_link_manager 对象。 |
公共方法
名称 | 说明 |
---|---|
add | 向 source_link_manager 对象添加源链接。 |
begin | 返回一个指向 source_link_manager 对象中第一个元素的迭代器。 |
contains | 在此 source_link_manager 对象内的 network_link_registry 中搜索指定块。 |
count | 计算 source_link_manager 对象中链接块的数量。 |
reference | 获取 source_link_manager 对象上的引用。 |
register_target_block | 注册保存此 source_link_manager 对象的目标块。 |
release | 释放 source_link_manager 对象上的引用。 |
remove | 从 source_link_manager 对象中删除链接。 |
set_bound | 设置可添加到此 source_link_manager 对象的源链接的最大数量。 |
备注
目前,源块是引用计数的。 这是 network_link_registry
对象上的包装器,允许并发访问链接并提供通过回调引用链接的功能。 消息块(target_block
s 或 propagator_block
s)应将此类用于其源链接。
继承层次结构
source_link_manager
要求
标头: agents.h
命名空间: 并发
add
向 source_link_manager
对象添加源链接。
void add(_EType _Link);
参数
_Link
指向要添加的块的指针。
begin
返回一个指向 source_link_manager
对象中第一个元素的迭代器。
iterator begin();
返回值
用于处理 source_link_manager
对象中的第一个元素的迭代器。
备注
迭代器的结束状态由 NULL
链接指示。
contains
在此 source_link_manager
对象内的 network_link_registry
中搜索指定块。
bool contains(_EType _Link);
参数
_Link
指向要在 source_link_manager
对象中搜索的块的指针。
返回值
如果找到指定块,则为 true
;否则,为 false
。
count
计算 source_link_manager
对象中链接块的数量。
size_t count();
返回值
source_link_manager
对象中链接块的数量。
reference
获取 source_link_manager
对象上的引用。
void reference();
register_target_block
注册保存此 source_link_manager
对象的目标块。
void register_target_block(_Inout_ ITarget<typename _Block::source_type>* _PTarget);
参数
_PTarget
保存此 source_link_manager
对象的目标块。
发布
释放 source_link_manager
对象上的引用。
void release();
remove
从 source_link_manager
对象中删除链接。
bool remove(_EType _Link);
参数
_Link
指向要删除的块的指针(如果找到)。
返回值
如果找到并移除了该链接,则为 true
;否则为 false
。
set_bound
设置可添加到此 source_link_manager
对象的源链接的最大数量。
void set_bound(size_t _MaxLinks);
参数
_MaxLinks
最大链接数。
source_link_manager
构造 source_link_manager
对象。
source_link_manager();
~source_link_manager
销毁 source_link_manager
对象。
~source_link_manager();