Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
L'oggetto multi_link_registry è un network_link_registry che gestisce più blocchi di origine o più blocchi di destinazione.
Sintassi
template<class _Block>
class multi_link_registry : public network_link_registry<_Block>;
Parametri
_Blocco
Tipo di dati di blocco archiviato nell'oggetto multi_link_registry .
Membri
Costruttori pubblici
| Nome | Descrizione |
|---|---|
| multi_link_registry | Costruisce un oggetto multi_link_registry. |
| Distruttore ~multi_link_registry | Elimina definitivamente l'oggetto multi_link_registry . |
Metodi pubblici
| Nome | Descrizione |
|---|---|
| add | Aggiunge un collegamento all'oggetto multi_link_registry . (Esegue l'override di network_link_registry::add. |
| begin | Restituisce un iteratore al primo elemento dell'oggetto multi_link_registry . (Esegue l'override di network_link_registry::begin. |
| contains | Cerca nell'oggetto multi_link_registry un blocco specificato. (Esegue l'override di network_link_registry::contains. |
| count | Conta il numero di elementi nell'oggetto multi_link_registry . (Esegue l'override di network_link_registry::count. |
| remove | Rimuove un collegamento dall'oggetto multi_link_registry . (Esegue l'override di network_link_registry::remove. |
| set_bound | Imposta un limite superiore sul numero di collegamenti che l'oggetto multi_link_registry può contenere. |
Gerarchia di ereditarietà
multi_link_registry
Requisiti
Intestazione: agents.h
Spazio dei nomi: Concurrency
add (aggiungi)
Aggiunge un collegamento all'oggetto multi_link_registry .
virtual void add(_EType _Link);
Parametri
_Collegamento
Puntatore a un blocco da aggiungere.
Osservazioni:
Il metodo genera un'eccezione invalid_link_target se il collegamento è già presente nel Registro di sistema o se è già stato impostato un limite con la set_bound funzione e un collegamento è stato rimosso.
begin
Restituisce un iteratore al primo elemento dell'oggetto multi_link_registry .
virtual iterator begin();
Valore restituito
Iteratore che punta al primo elemento dell'oggetto multi_link_registry .
Osservazioni:
Lo stato finale è indicato da un NULL collegamento.
contains
Cerca nell'oggetto multi_link_registry un blocco specificato.
virtual bool contains(_EType _Link);
Parametri
_Collegamento
Puntatore a un blocco da cercare nell'oggetto multi_link_registry .
Valore restituito
true se il blocco specificato è stato trovato; in caso contrario, false .
numero
Conta il numero di elementi nell'oggetto multi_link_registry .
virtual size_t count();
Valore restituito
Numero di elementi nell'oggetto multi_link_registry .
multi_link_registry
Costruisce un oggetto multi_link_registry.
multi_link_registry();
~multi_link_registry
Elimina definitivamente l'oggetto multi_link_registry .
virtual ~multi_link_registry();
Osservazioni:
Il metodo genera un'eccezione invalid_operation se viene chiamata prima che vengano rimossi tutti i collegamenti.
remove
Rimuove un collegamento dall'oggetto multi_link_registry .
virtual bool remove(_EType _Link);
Parametri
_Collegamento
Puntatore a un blocco da rimuovere, se trovato.
Valore restituito
true se il collegamento è stato trovato e rimosso, false in caso contrario.
set_bound
Imposta un limite superiore sul numero di collegamenti che l'oggetto multi_link_registry può contenere.
void set_bound(size_t _MaxLinks);
Parametri
_MaxLinks
Numero massimo di collegamenti che l'oggetto multi_link_registry può contenere.
Osservazioni:
Una volta impostato un limite, lo scollegamento di una voce comporta l'impostazione dello stato non modificabile per l'oggetto multi_link_registry, pertanto tramite le chiamate successive a add verrà generata un'eccezione invalid_link_target.