Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Obiekt source_link_manager zarządza łączami sieciowymi bloku komunikatów do ISource bloków.
Składnia
template<class _LinkRegistry>
class source_link_manager;
Parametry
_LinkRegistry
Rejestr łączy sieciowych.
Elementy członkowskie
Definicje typów publicznych
| Nazwa/nazwisko | opis |
|---|---|
const_pointer |
Typ, który dostarcza wskaźnik do const elementu w source_link_manager obiekcie. |
const_reference |
Typ, który zawiera odwołanie do elementu przechowywanego const source_link_manager w obiekcie do odczytywania i wykonywania operacji const. |
iterator |
Typ, który udostępnia iterator, który może odczytywać lub modyfikować dowolny element w source_link_manager obiekcie. |
type |
Typ rejestru łączy zarządzany przez source_link_manager obiekt. |
Konstruktory publiczne
| Nazwa/nazwisko | opis |
|---|---|
| source_link_manager | source_link_manager Tworzy obiekt. |
| ~source_link_manager Destruktor | source_link_manager Niszczy obiekt. |
Metody publiczne
| Nazwa/nazwisko | opis |
|---|---|
| add | Dodaje link źródłowy do source_link_manager obiektu. |
| zaczynać | Zwraca iterator do pierwszego elementu w source_link_manager obiekcie. |
| Contains | Wyszukuje network_link_registry w tym source_link_manager obiekcie określony blok. |
| count | Zlicza połączone bloki w source_link_manager obiekcie. |
| odniesienie | Uzyskuje odwołanie do source_link_manager obiektu. |
| register_target_block | Rejestruje blok docelowy, który zawiera ten source_link_manager obiekt. |
| zwolnić | Zwalnia odwołanie do source_link_manager obiektu. |
| remove | Usuwa łącze z source_link_manager obiektu. |
| set_bound | Ustawia maksymalną liczbę łączy źródłowych, które można dodać do tego source_link_manager obiektu. |
Uwagi
Obecnie bloki źródłowe są zliczane. Jest to otoka network_link_registry obiektu, który umożliwia współbieżny dostęp do łączy i zapewnia możliwość odwołowania się do linków za pośrednictwem wywołań zwrotnych. Bloki komunikatów (target_blocks lub propagator_blocks) powinny używać tej klasy dla ich linków źródłowych.
Hierarchia dziedziczenia
source_link_manager
Wymagania
Nagłówek: agents.h
Przestrzeń nazw: współbieżność
add
Dodaje link źródłowy do source_link_manager obiektu.
void add(_EType _Link);
Parametry
_Łącze
Wskaźnik do dodania bloku.
zaczynać
Zwraca iterator do pierwszego elementu w source_link_manager obiekcie.
iterator begin();
Wartość zwracana
Iterator odnoszący się do pierwszego elementu w source_link_manager obiekcie.
Uwagi
Stan końcowy iteratora jest wskazywany NULL przez łącze.
zawiera
Wyszukuje network_link_registry w tym source_link_manager obiekcie określony blok.
bool contains(_EType _Link);
Parametry
_Łącze
Wskaźnik do bloku, który ma być wyszukiwany w source_link_manager obiekcie.
Wartość zwracana
true jeśli określony blok został znaleziony, false w przeciwnym razie.
count
Zlicza połączone bloki w source_link_manager obiekcie.
size_t count();
Wartość zwracana
Liczba połączonych bloków w source_link_manager obiekcie.
reference
Uzyskuje odwołanie do source_link_manager obiektu.
void reference();
register_target_block
Rejestruje blok docelowy, który zawiera ten source_link_manager obiekt.
void register_target_block(_Inout_ ITarget<typename _Block::source_type>* _PTarget);
Parametry
_PTarget
Blok docelowy przechowujący ten source_link_manager obiekt.
zwolnić
Zwalnia odwołanie do source_link_manager obiektu.
void release();
remove
Usuwa łącze z source_link_manager obiektu.
bool remove(_EType _Link);
Parametry
_Łącze
Wskaźnik do usunięcia bloku, jeśli zostanie znaleziony.
Wartość zwracana
true jeśli link został znaleziony i usunięty, false w przeciwnym razie.
set_bound
Ustawia maksymalną liczbę łączy źródłowych, które można dodać do tego source_link_manager obiektu.
void set_bound(size_t _MaxLinks);
Parametry
_MaxLinks
Maksymalna liczba łączy.
source_link_manager
source_link_manager Tworzy obiekt.
source_link_manager();
~source_link_manager
source_link_manager Niszczy obiekt.
~source_link_manager();
Zobacz też
Przestrzeń nazw współbieżności
single_link_registry, klasa
multi_link_registry, klasa