Aracılığıyla paylaş


source_link_manager Sınıfı

nesnesi, source_link_manager bloklara yönelik mesajlaşma bloğu ağ bağlantılarını ISource yönetir.

Sözdizimi

template<class _LinkRegistry>
class source_link_manager;

Parametreler

_LinkRegistry
Ağ bağlantısı kayıt defteri.

Üyeler

Genel Tür Tanımları

Ad Tanım
const_pointer Nesnedeki bir const öğeye işaretçi sağlayan tür source_link_manager .
const_reference Const işlemlerini okumak ve gerçekleştirmek için nesnede depolanan bir source_link_manager öğeye başvuru const sağlayan tür.
iterator Nesnedeki source_link_manager herhangi bir öğeyi okuyabilen veya değiştirebilen bir yineleyici sağlayan tür.
type Nesne tarafından source_link_manager yönetilen bağlantı kayıt defteri türü.

Ortak Oluşturucular

Ad Tanım
source_link_manager Bir source_link_manager nesne oluşturur.
~source_link_manager Yıkıcı Nesneyi yok eder source_link_manager .

Genel Yöntemler

Ad Tanım
add Nesneye source_link_manager bir kaynak bağlantısı ekler.
Başlamak Nesnedeki ilk öğeye source_link_manager bir yineleyici döndürür.
Içerir network_link_registry Belirtilen bir blok için bu source_link_manager nesnenin içinde öğesini arar.
count Nesnedeki source_link_manager bağlı blok sayısını sayar.
Başvuru Nesne üzerinde source_link_manager bir başvuru alır.
register_target_block Bu source_link_manager nesneyi barındıran hedef bloğu kaydeder.
Sürüm Nesnedeki başvuruyu source_link_manager serbest bırakır.
remove Nesneden source_link_manager bir bağlantı kaldırır.
set_bound Bu source_link_manager nesneye eklenebilecek kaynak bağlantı sayısı üst sınırını ayarlar.

Açıklamalar

Şu anda kaynak bloklar başvuru olarak sayılır. Bu, bağlantılara eşzamanlı erişim sağlayan ve geri çağırmalar aracılığıyla bağlantılara başvurma olanağı sağlayan bir network_link_registry nesne üzerinde sarmalayıcıdır. İleti blokları ( target_blockveya propagator_blockblokları), kaynak bağlantıları için bu sınıfı kullanmalıdır.

Devralma Hiyerarşisi

source_link_manager

Gereksinimler

Üst bilgi: agents.h

Ad alanı: eşzamanlılık

add

Nesneye source_link_manager bir kaynak bağlantısı ekler.

void add(_EType _Link);

Parametreler

_Bağlantı
Eklenecek bir bloğun işaretçisi.

Başlamak

Nesnedeki ilk öğeye source_link_manager bir yineleyici döndürür.

iterator begin();

İade Değeri

Nesnedeki ilk öğeyi source_link_manager ele alan bir yineleyici.

Açıklamalar

Yineleyicinin bitiş durumu bir NULL bağlantıyla gösterilir.

içerir

network_link_registry Belirtilen bir blok için bu source_link_manager nesnenin içinde öğesini arar.

bool contains(_EType _Link);

Parametreler

_Bağlantı
Nesnede aranacak bir bloğun işaretçisi source_link_manager .

İade Değeri

true belirtilen blok bulunduysa, false aksi takdirde.

count

Nesnedeki source_link_manager bağlı blok sayısını sayar.

size_t count();

İade Değeri

Nesnedeki source_link_manager bağlı blokların sayısı.

reference

Nesne üzerinde source_link_manager bir başvuru alır.

void reference();

register_target_block

Bu source_link_manager nesneyi barındıran hedef bloğu kaydeder.

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

Parametreler

_PTarget
Bu source_link_manager nesneyi tutan hedef blok.

Sürüm

Nesnedeki başvuruyu source_link_manager serbest bırakır.

void release();

remove

Nesneden source_link_manager bir bağlantı kaldırır.

bool remove(_EType _Link);

Parametreler

_Bağlantı
Bulunursa kaldırılacak bir bloğun işaretçisi.

İade Değeri

true bağlantı bulunduysa ve kaldırıldıysa, false aksi takdirde.

set_bound

Bu source_link_manager nesneye eklenebilecek kaynak bağlantı sayısı üst sınırını ayarlar.

void set_bound(size_t _MaxLinks);

Parametreler

_MaxLinks
En fazla bağlantı sayısı.

source_link_manager

Bir source_link_manager nesne oluşturur.

source_link_manager();

~source_link_manager

Nesneyi yok eder source_link_manager .

~source_link_manager();

Ayrıca bkz.

Eşzamanlılık Ad Alanı
single_link_registry Sınıfı
multi_link_registry Sınıfı