Bagikan melalui


Kelas multi_link_registry

Objek multi_link_registry adalah network_link_registry yang mengelola beberapa blok sumber atau beberapa blok target.

Sintaks

template<class _Block>
class multi_link_registry : public network_link_registry<_Block>;

Parameter

_Halangi
Jenis data blok disimpan dalam multi_link_registry objek.

Anggota

Konstruktor Publik

Nama Deskripsi
multi_link_registry Membuat multi_link_registry objek.
~multi_link_registry Destructor multi_link_registry Menghancurkan objek.

Metode Publik

Nama Deskripsi
penambahan Menambahkan tautan ke multi_link_registry objek. (Ambil alih network_link_registry::add.)
mulai Mengembalikan iterator ke elemen pertama dalam multi_link_registry objek. (Mengambil alih network_link_registry::begin.)
mengandung multi_link_registry Mencari objek untuk blok tertentu. (Mengambil alih network_link_registry::contains.)
count Menghitung jumlah item dalam multi_link_registry objek. (Mengambil alih network_link_registry::count.)
buka Menghapus tautan dari multi_link_registry objek. (Ambil alih network_link_registry::remove.)
set_bound Mengatur batas atas pada jumlah tautan yang dapat ditahan multi_link_registry objek.

Hierarki Warisan

network_link_registry

multi_link_registry

Persyaratan

Header: agents.h

Namespace: konkurensi

tambahkan

Menambahkan tautan ke multi_link_registry objek.

virtual void add(_EType _Link);

Parameter

_Tautan
Penunjuk ke blok yang akan ditambahkan.

Keterangan

Metode ini melemparkan pengecualian invalid_link_target jika tautan sudah ada di registri, atau jika terikat telah diatur dengan set_bound fungsi dan tautan telah dihapus.

mulai

Mengembalikan iterator ke elemen pertama dalam multi_link_registry objek.

virtual iterator begin();

Tampilkan Nilai

Iterator yang membahas elemen pertama dalam multi_link_registry objek.

Keterangan

Status akhir ditunjukkan oleh NULL tautan.

mengandung

multi_link_registry Mencari objek untuk blok tertentu.

virtual bool contains(_EType _Link);

Parameter

_Tautan
Penunjuk ke blok yang akan dicari di multi_link_registry objek.

Tampilkan Nilai

true jika blok yang ditentukan ditemukan, false jika tidak.

jumlah

Menghitung jumlah item dalam multi_link_registry objek.

virtual size_t count();

Tampilkan Nilai

Jumlah item dalam multi_link_registry objek.

multi_link_registry

Membuat multi_link_registry objek.

multi_link_registry();

~multi_link_registry

multi_link_registry Menghancurkan objek.

virtual ~multi_link_registry();

Keterangan

Metode ini melemparkan pengecualian invalid_operation jika dipanggil sebelum semua tautan dihapus.

buka

Menghapus tautan dari multi_link_registry objek.

virtual bool remove(_EType _Link);

Parameter

_Tautan
Penunjuk ke blok yang akan dihapus, jika ditemukan.

Tampilkan Nilai

true jika tautan ditemukan dan dihapus, false jika tidak.

set_bound

Mengatur batas atas pada jumlah tautan yang dapat ditahan multi_link_registry objek.

void set_bound(size_t _MaxLinks);

Parameter

_MaxLinks
Jumlah maksimum tautan yang dapat ditahan multi_link_registry objek.

Keterangan

Setelah terikat diatur, membatalkan tautan entri akan menyebabkan multi_link_registry objek memasuki status tidak dapat diubah di mana panggilan lebih lanjut akan add melemparkan invalid_link_target pengecualian.

Lihat juga

Namespace layanan konkurensi
Kelas single_link_registry