Compartilhar via


CachedMessageBlock Classe

Definição

CachedMessageBlock é um bloco de estruturas bem empacotadas que contêm dados de rastreamento para mensagens armazenadas em cache. Esses dados são fortemente empacotados para reduzir a pressão do GC. Os dados de rastreamento são usados pelo cache de fila para percorrer o cache que atende mensagens de fila ordenadas por fluxo.

public class CachedMessageBlock : Orleans.Providers.Streams.Common.PooledResource<Orleans.Providers.Streams.Common.CachedMessageBlock>
type CachedMessageBlock = class
    inherit PooledResource<CachedMessageBlock>
Public Class CachedMessageBlock
Inherits PooledResource(Of CachedMessageBlock)
Herança

Construtores

CachedMessageBlock(Int32)

Bloco de mensagens armazenadas em cache.

Propriedades

HasCapacity

Obtém um valor que indica se mais mensagens podem ser adicionadas ao bloco.

IsEmpty

Obtém um valor que indica se esse bloco está vazio.

Item[Int32]

Acesse a mensagem armazenada em cache no índice fornecido.

ItemCount

Obtém o número de mensagens neste bloco.

NewestMessage

Obtém a mensagem mais recente neste bloco.

NewestMessageIndex

Obtém o índice da mensagem mais recente adicionada ao bloco.

Node

Nó de lista vinculado, portanto, esse bloco de mensagens pode ser mantido em uma lista vinculada.

OldestMessage

Obtém a mensagem mais antiga no bloco.

OldestMessageIndex

Obtém o índice da mensagem mais antiga neste bloco.

Pool

Obtém o pool para o qual retornar esse recurso após o descarte. Um pool deve definir essa propriedade após a alocação de recursos.

(Herdado de PooledResource<T>)

Métodos

Add(CachedMessage)

Adicione uma mensagem da fila ao bloco. Converte a mensagem da fila em uma mensagem armazenada em cache e a armazena no final do bloco.

Dispose()

Retorna o item para pool.

(Herdado de PooledResource<T>)
GetIndexOfFirstMessageLessThanOrEqualTo(StreamSequenceToken)

Obtém o índice da primeira mensagem neste bloco que tem um token de sequência em ou antes do token fornecido

GetNewestSequenceToken(ICacheDataAdapter)

Obtém o token de sequência da mensagem mais recente neste bloco

GetOldestSequenceToken(ICacheDataAdapter)

Obtém o token de sequência da mensagem mais antiga neste bloco

GetSequenceToken(Int32, ICacheDataAdapter)

Obtém o token de sequência da mensagem armazenada em cache de um índice fornecido

OnResetState()

Redefine esse estado de blocos para o de um bloco vazio.

Remove()

Remove uma mensagem do início do bloco (dados mais antigos).

SignalPurge()

Se esse objeto for usado em um pool de objetos de tamanho fixo, essa chamada deverá ser substituída pela implementação de limpeza que retorna o objeto para o pool.

(Herdado de PooledResource<T>)
TryFindFirstMessage(IStreamIdentity, ICacheDataAdapter, Int32)

Tenta localizar a primeira mensagem no bloco que faz parte do fluxo fornecido.

TryFindFirstMessage(StreamId, ICacheDataAdapter, Int32)

Tenta localizar a primeira mensagem no bloco que faz parte do fluxo fornecido.

TryFindNextMessage(Int32, IStreamIdentity, ICacheDataAdapter, Int32)

Tenta obter a próxima mensagem do fluxo fornecido, começando no índice inicial.

TryFindNextMessage(Int32, StreamId, ICacheDataAdapter, Int32)

Tenta obter a próxima mensagem do fluxo fornecido, começando no índice inicial.

Aplica-se a