classe de overwrite_buffer
Um overwrite_buffer bloco de mensagens é um para vários destinos, várias fontes, ordenados propagator_block capaz de armazenar uma única mensagem por vez.Novas mensagens substituem aqueles mantidos anteriormente.
template<
class _Type
>
class overwrite_buffer : public propagator_block<multi_link_registry<ITarget<_Type>>, multi_link_registry<ISource<_Type>>>;
Parâmetros
- _Type
O tipo de carga de mensagens armazenadas e propagadas por buffer.
Membros
Construtores públicos
Nome |
Descrição |
---|---|
Sobrecarregado.Constrói um overwrite_buffer bloco de mensagens. |
|
Destrói a overwrite_buffer bloco de mensagens. |
Métodos públicos
Nome |
Descrição |
---|---|
Verifica se esse overwrite_buffer bloco de mensagens tem um valor ainda. |
|
Obtém uma referência para a carga atual da mensagem que está sendo armazenada na overwrite_buffer bloco de mensagens. |
Métodos protegidos
Nome |
Descrição |
---|---|
Aceita uma mensagem que foi oferecida por esse overwrite_buffer bloco de mensagens, retornando uma cópia da mensagem para o chamador. |
|
Consome uma mensagem anteriormente oferecida pelo overwrite_buffer bloco de mensagens e reservado pelo destino, retornando uma cópia da mensagem para o chamador. |
|
Um retorno de chamada que notifica que um novo destino foi vinculado a esta overwrite_buffer bloco de mensagens. |
|
Assincronamente passa uma mensagem de um ISource bloco a esta overwrite_buffer bloco de mensagens.Ele é chamado pelo propagate método, quando chamado por um bloco de origem. |
|
Locais de message_PMessage deste overwrite_buffer bloco de mensagens e oferece para todos os destinos vinculados. |
|
Libera uma reserva mensagem anterior.(Substitui source_block::release_message.) |
|
Reserva uma mensagem anteriormente oferecida por esse overwrite_buffer bloco de mensagens.(Substitui source_block::reserve_message.) |
|
Reinicia a propagação depois lançou uma reserva.(Substitui source_block::resume_propagation.) |
|
Síncrona passa uma mensagem de um ISource bloco a esta overwrite_buffer bloco de mensagens.Ele é chamado pelo send método, quando chamado por um bloco de origem. |
|
Substitui o supports_anonymous_source método para indicar que este bloco pode aceitar mensagens oferecidas a ele por uma fonte que não está vinculada.(Substitui ITarget::supports_anonymous_source.) |
Comentários
Um overwrite_buffer bloco de mensagens propaga cópias de sua mensagem armazenada a cada um de seus destinos.
Para mais informações, consulte Blocos assíncronas de mensagem.
Hierarquia de herança
overwrite_buffer
Requisitos
Cabeçalho: agents.h
Namespace: concorrência