Classe unbounded_buffer
Um bloco da mensagem de unbounded_buffer é uma para mais idiomas de destino, várias origem, propagator_block ordenado capaz de armazenar um número ilimitado de mensagens.
template<
class _Type
>
class unbounded_buffer : public propagator_block<multi_link_registry<ITarget<_Type>>, multi_link_registry<ISource<_Type>>>;
Parâmetros
- _Type
O tipo de carga útil de mensagens armazenadas e propagadas pelo buffer.
Membros
Construtores Públicos
Nome |
Descrição |
---|---|
Sobrecarregado. Constrói um bloco da mensagem de unbounded_buffer . |
|
Destrói o bloco da mensagem de unbounded_buffer . |
Métodos Públicos
Nome |
Descrição |
---|---|
Remove um item do bloco da mensagem de unbounded_buffer . |
|
Adiciona um item ao bloco da mensagem de unbounded_buffer . |
Métodos Protegidos
Nome |
Descrição |
---|---|
Aceita uma mensagem que é oferecida por esse bloco da mensagem de unbounded_buffer , transferindo propriedade ao chamador. |
|
Consome uma mensagem anteriormente oferecida pelo bloco da mensagem de unbounded_buffer e reservada pelo destino, transferindo propriedade ao chamador. |
|
Um retorno de chamada que notifica que um novo destino esteve vinculado a esse bloco da mensagem de unbounded_buffer . |
|
Coloca message_PMessage do bloco da mensagem de unbounded_buffer e tenta oferecê-lo em todos os destinos vinculados. |
|
Passa de forma assíncrona uma mensagem de um bloco de ISource a esse bloco da mensagem de unbounded_buffer . É invocado pelo método de propagate , quando chamado por um bloco de origem. |
|
Coloca message_PMessage do bloco da mensagem de unbounded_buffer e tenta oferecê-lo em todos os destinos vinculados. (Substitui source_block::propagate_output_messages.) |
|
Libera uma reserva anterior da mensagem. (Substitui source_block::release_message.) |
|
Reserva uma mensagem oferecida anteriormente por esse bloco da mensagem de unbounded_buffer . (Substitui source_block::reserve_message.) |
|
Propagação de resumos depois que uma reserva foi liberada. (Substitui source_block::resume_propagation.) |
|
Passa de forma síncrona uma mensagem de um bloco de ISource a esse bloco da mensagem de unbounded_buffer . É invocado pelo método de send , quando chamado por um bloco de origem. |
|
Substitui o método de supports_anonymous_source para indicar que esse bloco pode aceitar as mensagens são oferecidas a ele por uma origem que não seja vinculada. (Substitui ITarget::supports_anonymous_source.) |
Comentários
Para obter mais informações, consulte Blocos de mensagens assíncronos.
Hierarquia de Herança
unbounded_buffer
Requisitos
Cabeçalho: agents.h
Namespace: simultaneidade