Udostępnij za pośrednictwem


Klasa unbounded_buffer

unbounded_buffer Bloku obsługi wiadomości jest multi-target, multi-source, uporządkowanej propagator_block zdolnych do przechowywania nieokreślonej liczby wiadomości.

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

Parametry

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

Członkowie

Dd492602.collapse_all(pl-pl,VS.110).gifPubliczne konstruktory

Nazwa

Opis

Konstruktor unbounded_buffer::unbounded_buffer

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

unbounded_buffer:: ~ unbounded_buffer destruktor

Niszczy unbounded_buffer bloku obsługi wiadomości.

Dd492602.collapse_all(pl-pl,VS.110).gifMetody publiczne

Nazwa

Opis

Metoda unbounded_buffer::dequeue

Usuwa element z unbounded_buffer bloku obsługi wiadomości.

Metoda unbounded_buffer::enqueue

Dodaje element do unbounded_buffer bloku obsługi wiadomości.

Dd492602.collapse_all(pl-pl,VS.110).gifMetody chronione

Nazwa

Opis

Metoda unbounded_buffer::accept_message

Akceptuje wiadomość, oferowany przez to unbounded_buffer bloku obsługi wiadomości, przeniesienia własności do obiektu wywołującego.

Metoda unbounded_buffer::consume_message

Pobiera wiadomość wcześniej oferowanych przez unbounded_buffer wiadomości bloku i zarezerwowany przez obiekt docelowy przeniesienia własności do obiektu wywołującego.

Metoda unbounded_buffer::link_target_notification

Wywołania zwrotnego powiadomienia połączone nowy cel tej unbounded_buffer bloku obsługi wiadomości.

Metoda unbounded_buffer::process_input_messages

Miejsca message_PMessage w tym unbounded_buffer bloku obsługi wiadomości i próbuje zaoferować go do wszystkich połączonych obiektów docelowych.

Metoda unbounded_buffer::propagate_message

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

Metoda unbounded_buffer::propagate_output_messages

Miejsca message_PMessage w tym unbounded_buffer bloku obsługi wiadomości i próbuje zaoferować go do wszystkich połączonych obiektów docelowych.(Zastępuje source_block::propagate_output_messages.)

Metoda unbounded_buffer::release_message

Wydania poprzedniej rezerwacji wiadomości.(Zastępuje source_block::release_message.)

Metoda unbounded_buffer::reserve_message

Rezerwy wiadomość wcześniej oferowanych przez to unbounded_buffer bloku obsługi wiadomości.(Zastępuje source_block::reserve_message.)

Metoda unbounded_buffer::resume_propagation

Po zwolnieniu rezerwacji, wznawia propagacji.(Zastępuje source_block::resume_propagation.)

Metoda unbounded_buffer::send_message

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

Metoda unbounded_buffer::supports_anonymous_source

Zastępuje supports_anonymous_source metodę, aby wskazać, że ta blokada może akceptować wiadomości oferowane przez źródło, który nie jest połączony.(Zastępuje ITarget::supports_anonymous_source.)

Uwagi

Aby uzyskać więcej informacji, zobacz Asynchroniczne blokuje wiadomości.

Hierarchii dziedziczenia

ISource

ITarget

source_block

propagator_block

unbounded_buffer

Wymagania

Nagłówek: agents.h

Obszar nazw: współbieżności

Zobacz też

Informacje

Współbieżność obszaru nazw

Klasa overwrite_buffer

Klasa single_assignment