multi_link_registry, classe
L'objet multi_link_registry
est un network_link_registry
qui gère plusieurs blocs sources ou plusieurs blocs cibles.
Syntaxe
template<class _Block>
class multi_link_registry : public network_link_registry<_Block>;
Paramètres
_Bloquer
Type de données de bloc stocké dans l’objet multi_link_registry
.
Membres
Constructeurs publics
Nom | Description |
---|---|
multi_link_registry | Construit un objet multi_link_registry . |
~multi_link_registry Destructeur | Détruit l’objet multi_link_registry . |
Méthodes publiques
Nom | Description |
---|---|
add | Ajoute un lien à l’objet multi_link_registry . (Remplace network_link_registry ::add.) |
begin | Retourne un itérateur au premier élément de l’objet multi_link_registry . (Remplace network_link_registry ::begin.) |
contains | Recherche l’objet multi_link_registry pour un bloc spécifié. (Remplace network_link_registry ::contains.) |
count | Compte le nombre d’éléments dans l’objet multi_link_registry . (Remplace network_link_registry ::count.) |
remove | Supprime un lien de l’objet multi_link_registry . (Substitue network_link_registry ::remove.) |
set_bound | Définit une limite supérieure sur le nombre de liens que l’objet multi_link_registry peut contenir. |
Hiérarchie d'héritage
multi_link_registry
Spécifications
En-tête : agents.h
Espace de noms : concurrency
add
Ajoute un lien à l’objet multi_link_registry
.
virtual void add(_EType _Link);
Paramètres
_Lien
Pointeur vers un bloc à ajouter.
Notes
La méthode lève une exception invalid_link_target si le lien est déjà présent dans le Registre, ou si une liaison a déjà été définie avec la set_bound
fonction et qu’un lien a été supprimé depuis.
begin
Retourne un itérateur au premier élément de l’objet multi_link_registry
.
virtual iterator begin();
Valeur de retour
Itérateur qui traite le premier élément de l’objet multi_link_registry
.
Notes
L’état de fin est indiqué par un NULL
lien.
contains
Recherche l’objet multi_link_registry
pour un bloc spécifié.
virtual bool contains(_EType _Link);
Paramètres
_Lien
Pointeur vers un bloc à rechercher dans l’objet multi_link_registry
.
Valeur de retour
true
si le bloc spécifié a été trouvé, false
sinon.
count
Compte le nombre d’éléments dans l’objet multi_link_registry
.
virtual size_t count();
Valeur de retour
Nombre d’éléments dans l’objet multi_link_registry
.
multi_link_registry
Construit un objet multi_link_registry
.
multi_link_registry();
~multi_link_registry
Détruit l’objet multi_link_registry
.
virtual ~multi_link_registry();
Notes
La méthode lève une exception invalid_operation si elle est appelée avant que tous les liens ne soient supprimés.
remove
Supprime un lien de l’objet multi_link_registry
.
virtual bool remove(_EType _Link);
Paramètres
_Lien
Pointeur vers un bloc à supprimer, s’il est trouvé.
Valeur de retour
true
si le lien a été trouvé et supprimé, false
sinon.
set_bound
Définit une limite supérieure sur le nombre de liens que l’objet multi_link_registry
peut contenir.
void set_bound(size_t _MaxLinks);
Paramètres
_MaxLinks
Nombre maximal de liens que l’objet multi_link_registry
peut contenir.
Notes
Une fois qu’une limite est définie, la dissociation d’une entrée entraîne l’entrée de l’objet multi_link_registry
dans un état immuable où d’autres appels lèvent add
une invalid_link_target
exception.