Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El objeto source_link_manager gestiona los enlaces de red de los bloques de mensajería hacia 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 |
|---|---|
| gestor_de_enlaces_de_fuente | 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. |
| contiene | 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 están gestionados mediante contadores de referencia. Se trata de un contenedor sobre un objeto network_link_registry que permite el acceso simultáneo a los enlaces y ofrece la posibilidad de hacer referencia a ellos mediante callbacks. Los bloques de mensajes (target_blocks o propagator_blocks) 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
añadir
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.
contiene
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.
conteo
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.
referencia
Adquiere una referencia en el objeto source_link_manager.
void reference();
registrar_bloque_objetivo
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.
lanzamiento
Libera la referencia en el objeto source_link_manager.
void release();
eliminar
Quita un vínculo del objeto source_link_manager.
bool remove(_EType _Link);
Parámetros
_Link
Puntero a un bloque que debe ser eliminado, si se encuentra.
Valor devuelto
true si se ha encontrado y quitado el vínculo, de lo contrario, false.
establecer_límite
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.
gestor_de_enlaces_fuente
Construye un objeto source_link_manager.
source_link_manager();
~source_link_manager
Destruye el objeto source_link_manager.
~source_link_manager();
Consulte también
espacio de nombres de concurrencia
Clase de registro_single_link
Clase multi_link_registry