Udostępnij za pośrednictwem


single_assignment — Klasa

Blok obsługi wiadomości single_assignment to blok o wielu elementach docelowych i źródłowych, uporządkowany propagator_block który może przechowywać pojedynczą message jednokrotnego zapisu.

template<
   class _Type
>
class single_assignment : public propagator_block<multi_link_registry<ITarget<_Type>>, multi_link_registry<ISource<_Type>>>;

Parametry

  • _Type
    Typ ładunku wiadomości przechowywane i propagowane przez bufor.

Elementy członkowskie

Konstruktory publiczne

Nazwa

Opis

single_assignment::single_assignment — Konstruktor

Przeciążone.Konstrukcje single_assignment bloku obsługi wiadomości.

single_assignment::~single_assignment — Destruktor

Niszczy single_assignment bloku obsługi wiadomości.

Metody publiczne

Nazwa

Opis

single_assignment::has_value — Metoda

Sprawdza, czy to single_assignment bloku obsługi wiadomości została zainicjowana z wartością jeszcze.

single_assignment::value — Metoda

Pobiera odwołanie do bieżącego ładunku wiadomości są przechowywane w single_assignment bloku obsługi wiadomości.

Metody chronione

Nazwa

Opis

single_assignment::accept_message — Metoda

Akceptuje wiadomości, który był oferowany przez to single_assignment bloku obsługi wiadomości, zwracanie kopię wiadomości do obiektu wywołującego.

single_assignment::consume_message — Metoda

Pobiera wiadomość oferowanych wcześniej przez single_assignment i zarezerwowanych przez obiekt docelowy, zwracanie kopię wiadomości do obiektu wywołującego.

single_assignment::link_target_notification — Metoda

Wywołania zwrotnego, który powiadamia, że nowy obiekt docelowy został powiązany z tym single_assignment bloku obsługi wiadomości.

single_assignment::propagate_message — Metoda

Asynchronicznie przekazuje komunikat z ISource bloku do tego single_assignment bloku obsługi wiadomości.Jest ono wywoływane przez propagate metodę, gdy wywoływany przez bloku źródłowego.

single_assignment::propagate_to_any_targets — Metoda

Miejsca message_PMessage w tym single_assignment wiadomości bloku i oferuje ją do wszystkich połączonych obiektów docelowych.

single_assignment::release_message — Metoda

Zwalnia Poprzednia rezerwacja wiadomość. (Zastępuje source_block::release_message.)

single_assignment::reserve_message — Metoda

Zastrzega sobie wiadomości oferowanych wcześniej przez to single_assignment bloku obsługi wiadomości. (Zastępuje source_block::reserve_message.)

single_assignment::resume_propagation — Metoda

Wznawia działanie propagacji po zastrzeżenie zostało zwolnione. (Zastępuje source_block::resume_propagation.)

single_assignment::send_message — Metoda

Synchronicznie przekazuje komunikat z ISource bloku do tego single_assignment bloku obsługi wiadomości.Jest ono wywoływane przez send metodę, gdy wywoływany przez bloku źródłowego.

Uwagi

A single_assignment bloku obsługi wiadomości rozchodzi się kopie swoich wiadomości do każdego obiektu docelowego.

Aby uzyskać więcej informacji, zobacz Bloki komunikatów asynchronicznych.

Hierarchia dziedziczenia

ISource

ITarget

source_block

propagator_block

single_assignment

Wymagania

Nagłówek: agents.h

Przestrzeń nazw: concurrency

Zobacz też

Informacje

concurrency — Przestrzeń nazwy

overwrite_buffer — Klasa

unbounded_buffer — Klasa