Condividi tramite


Classe source_link_manager

L'oggetto source_link_manager gestisce i collegamenti di rete dei blocchi di messaggistica verso i blocchi ISource.

Sintassi

template<class _LinkRegistry>
class source_link_manager;

Parametri

_LinkRegistry
Registro dei collegamenti di rete.

Membri

Typedef pubblici

Nome Descrizione
const_pointer Tipo che fornisce un puntatore a un const elemento in un source_link_manager oggetto .
const_reference Tipo che fornisce un riferimento a un const elemento archiviato in un source_link_manager oggetto per la lettura e l'esecuzione di operazioni const.
iterator Tipo che fornisce un iteratore in grado di leggere o modificare qualsiasi elemento nell'oggetto source_link_manager .
type Tipo di registro dei collegamenti gestito dall'oggetto source_link_manager .

Costruttori pubblici

Nome Descrizione
source_link_manager Costruisce un oggetto source_link_manager.
~source_link_manager Distruttore Elimina definitivamente l'oggetto source_link_manager .

Metodi pubblici

Nome Descrizione
aggiungi Aggiunge un collegamento di origine all'oggetto source_link_manager .
begin Restituisce un iteratore al primo elemento dell'oggetto source_link_manager .
contiene Cerca all'interno di network_link_registry questo source_link_manager oggetto un blocco specificato.
count Conta il numero di blocchi collegati nell'oggetto source_link_manager .
riferimento Acquisisce un riferimento sull'oggetto source_link_manager .
register_target_block Registra il blocco di destinazione che contiene questo source_link_manager oggetto.
release Rilascia il riferimento dell'oggetto source_link_manager.
remove Rimuove un collegamento dall'oggetto source_link_manager .
set_bound Imposta il numero massimo di collegamenti di origine che è possibile aggiungere a questo source_link_manager oggetto.

Osservazioni:

Attualmente, i blocchi di origine sono soggetti a conteggio di riferimenti. Si tratta di un wrapper in un network_link_registry oggetto che consente l'accesso simultaneo ai collegamenti e consente di fare riferimento ai collegamenti tramite callback. I blocchi di messaggi (target_blocks o propagator_blocks) devono usare questa classe per i collegamenti di origine.

Gerarchia di ereditarietà

source_link_manager

Requisiti

Intestazione: agents.h

Spazio dei nomi: Concurrency

add (aggiungi)

Aggiunge un collegamento di origine all'oggetto source_link_manager .

void add(_EType _Link);

Parametri

_Collegamento
Puntatore a un blocco da aggiungere.

iniziare

Restituisce un iteratore al primo elemento dell'oggetto source_link_manager .

iterator begin();

Valore restituito

Iteratore che punta al primo elemento dell'oggetto source_link_manager .

Osservazioni:

Lo stato finale dell'iteratore è indicato da un NULL collegamento.

contiene

Cerca all'interno di network_link_registry questo source_link_manager oggetto un blocco specificato.

bool contains(_EType _Link);

Parametri

_Collegamento
Puntatore a un blocco da cercare nell'oggetto source_link_manager .

Valore restituito

true se il blocco specificato è stato trovato; in caso contrario, false .

numero

Conta il numero di blocchi collegati nell'oggetto source_link_manager .

size_t count();

Valore restituito

Numero di blocchi collegati nell'oggetto source_link_manager .

riferimento

Acquisisce un riferimento sull'oggetto source_link_manager .

void reference();

register_target_block

Registra il blocco di destinazione che contiene questo source_link_manager oggetto.

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

Parametri

_PTarget
Blocco di destinazione che contiene questo source_link_manager oggetto.

rilascio

Rilascia il riferimento dell'oggetto source_link_manager.

void release();

rimuovere

Rimuove un collegamento dall'oggetto source_link_manager .

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.

imposta_limite

Imposta il numero massimo di collegamenti di origine che è possibile aggiungere a questo source_link_manager oggetto.

void set_bound(size_t _MaxLinks);

Parametri

_MaxLinks
Numero massimo di collegamenti.

source_link_manager

Costruisce un oggetto source_link_manager.

source_link_manager();

~source_link_manager

Elimina definitivamente l'oggetto source_link_manager .

~source_link_manager();

Vedi anche

Spazio dei nomi concorrenza
Classe single_link_registry
Classe multi_link_registry