Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
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.