Share via


source_link_manager (Clase)

El objeto source_link_manager administra los vínculos de red del bloque de mensajería para los bloques ISource.

Sintaxis

template<class _LinkRegistry>
class source_link_manager;

Parámetros

_LinkRegistry
Registro de vínculo de red.

Miembros

Definiciones de tipos públicas

Nombre Descripción
const_pointer Tipo que proporciona un puntero a un elemento const en un objeto source_link_manager.
const_reference Tipo que proporciona una referencia a un elemento const almacenado en un objeto source_link_manager para leer operaciones const y realizarlas.
iterator Tipo que proporciona un iterador que puede leer o modificar cualquier elemento del objeto source_link_manager.
type Tipo de registro de vínculo que administra el objeto source_link_manager.

Constructores públicos

Nombre Descripción
source_link_manager Construye un objeto source_link_manager.
~source_link_manager Destructor Destruye el objeto source_link_manager.

Métodos públicos

Nombre Descripción
agregar Agrega un vínculo de origen al objeto source_link_manager.
begin Devuelve un iterador al primer elemento del objeto source_link_manager.
contains Busca en el elemento network_link_registry de este objeto source_link_manager un bloque especificado.
count Cuenta el número de bloques vinculados en el objeto source_link_manager.
referencia Adquiere una referencia en el objeto source_link_manager.
register_target_block Registra el bloque de destino que contiene este objeto source_link_manager.
release Libera la referencia en el objeto source_link_manager.
remove Quita un vínculo del objeto source_link_manager.
set_bound Establece el número máximo de vínculos de origen que se pueden agregar a este objeto source_link_manager.

Comentarios

Actualmente, los bloques de origen tienen recuento de referencias. Se trata de un contenedor en un objeto network_link_registry que permite el acceso simultáneo a los vínculos y ofrece la posibilidad de hacer referencia a ellos por medio de devoluciones de llamada. Los bloques de mensajes (target_block o propagator_block) deben usar esta clase para sus vínculos de origen.

Jerarquía de herencia

source_link_manager

Requisitos

Encabezado: agents.h

Espacio de nombres: simultaneidad

add

Agrega un vínculo de origen al objeto source_link_manager.

void add(_EType _Link);

Parámetros

_Link
Puntero a un bloque que se va a agregar.

begin

Devuelve un iterador al primer elemento del objeto source_link_manager.

iterator begin();

Valor devuelto

Iterador que direcciona el primer elemento del objeto source_link_manager.

Comentarios

El estado final del iterador se indica mediante un vínculo NULL.

contains

Busca en el elemento network_link_registry de este objeto source_link_manager un bloque especificado.

bool contains(_EType _Link);

Parámetros

_Link
Puntero a un bloque que se va a buscar en el objeto source_link_manager.

Valor devuelto

true si se ha encontrado el bloque especificado; de lo contrario, false.

count

Cuenta el número de bloques vinculados en el objeto source_link_manager.

size_t count();

Valor devuelto

Número de bloques vinculados en el objeto source_link_manager.

reference

Adquiere una referencia en el objeto source_link_manager.

void reference();

register_target_block

Registra el bloque de destino que contiene este objeto source_link_manager.

void register_target_block(_Inout_ ITarget<typename _Block::source_type>* _PTarget);

Parámetros

_PTarget
Bloque de destino que contiene este objeto source_link_manager.

release

Libera la referencia en el objeto source_link_manager.

void release();

remove

Quita un vínculo del objeto source_link_manager.

bool remove(_EType _Link);

Parámetros

_Link
Puntero a un bloque que se va a quitar, si se encuentra.

Valor devuelto

true si se ha encontrado y quietado el vínculo; de lo contrario, false.

set_bound

Establece el número máximo de vínculos de origen que se pueden agregar a este objeto source_link_manager.

void set_bound(size_t _MaxLinks);

Parámetros

_MaxLinks
Número máximo de vínculos.

source_link_manager

Construye un objeto source_link_manager.

source_link_manager();

~source_link_manager

Destruye el objeto source_link_manager.

~source_link_manager();

Consulte también

concurrency (espacio de nombres)
single_link_registry (clase)
multi_link_registry (clase)