Sdílet prostřednictvím


unbounded_buffer – třída

Blok zpráv unbounded_buffer je setříděný blok propagator_block s více cíli a více zdroji schopný uložit neomezený počet zpráv.

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

Parametry

  • _Type
    Typ datové části zprávy ukládají a šířeny ve vyrovnávací paměti.

Členy

Veřejné konstruktory

Název

Description

unbounded_buffer::unbounded_buffer – konstruktor

Přetíženo.Konstrukce unbounded_buffer blok pro zasílání zpráv.

unbounded_buffer::~unbounded_buffer – destruktor

Ničí unbounded_buffer blok pro zasílání zpráv.

Veřejné metody

Název

Description

unbounded_buffer::dequeue – metoda

Odebere položku ze unbounded_buffer blok pro zasílání zpráv.

unbounded_buffer::enqueue – metoda

Přidá položku, kterou chcete unbounded_buffer blok pro zasílání zpráv.

Chráněné metody

Název

Description

unbounded_buffer::accept_message – metoda

Přijímá zprávy, který nabídl to unbounded_buffer blok pro zasílání zpráv, převod vlastnictví k volajícímu.

unbounded_buffer::consume_message – metoda

Zpracovává zprávy dříve nabízených unbounded_buffer blok zpráv a vyhrazené cíle, převod vlastnictví k volajícímu.

unbounded_buffer::link_target_notification – metoda

Zpětné volání, které upozorní, že nový cíl spojován s tím unbounded_buffer blok pro zasílání zpráv.

unbounded_buffer::process_input_messages – metoda

Místa message_PMessage v tomto unbounded_buffer blok pro zasílání zpráv a snaží nabídnout tak, aby všechny propojené cíle.

unbounded_buffer::propagate_message – metoda

Asynchronně předává zprávy z ISource blok na tento unbounded_buffer blok pro zasílání zpráv.Je vyvolán propagate metoda volána zdrojového bloku.

unbounded_buffer::propagate_output_messages – metoda

Místa message_PMessage v tomto unbounded_buffer blok pro zasílání zpráv a snaží nabídnout tak, aby všechny propojené cíle. (Přepisuje source_block::propagate_output_messages.)

unbounded_buffer::release_message – metoda

Vydává předchozí zprávy rezervace. (Přepisuje source_block::release_message.)

unbounded_buffer::reserve_message – metoda

Rezervy zprávu dříve nabízené to unbounded_buffer blok pro zasílání zpráv. (Přepisuje source_block::reserve_message.)

unbounded_buffer::resume_propagation – metoda

Pokračuje v šíření po rezervaci vydala. (Přepisuje source_block::resume_propagation.)

unbounded_buffer::send_message – metoda

Synchronně předává zprávy z ISource blok na tento unbounded_buffer blok pro zasílání zpráv.Je vyvolán send metoda volána zdrojového bloku.

unbounded_buffer::supports_anonymous_source – metoda

Přepíše supports_anonymous_source method k oznámení toho, že tento blok mohou přijímat zprávy, které jsou nabízeny ze zdroje, který není propojen. (Přepisuje ITarget::supports_anonymous_source.)

Poznámky

Další informace naleznete v tématu Asynchronní bloky zpráv.

Hierarchie dědičnosti

ISource

ITarget

source_block

propagator_block

unbounded_buffer

Požadavky

Záhlaví: agents.h

Obor názvů: souběžnost

Viz také

Referenční dokumentace

concurrency – obor názvů

overwrite_buffer – třída

single_assignment – třída