Compartir a través de


CachedMessageBlock Clase

Definición

CachedMessageBlock es un bloque de estructuras estrechamente empaquetadas que contienen datos de seguimiento para los mensajes almacenados en caché. Estos datos están estrechamente empaquetados para reducir la presión de GC. La memoria caché de cola usa los datos de seguimiento para recorrer la memoria caché que atiende los mensajes de cola ordenados por secuencia.

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)
Herencia

Constructores

CachedMessageBlock(Int32)

Bloque de mensajes almacenados en caché.

Propiedades

HasCapacity

Obtiene un valor que indica si se pueden agregar más mensajes al bloque.

IsEmpty

Obtiene un valor que indica si este bloque está vacío.

Item[Int32]

Acceda al mensaje almacenado en caché en el índice proporcionado.

ItemCount

Obtiene el número de mensajes de este bloque.

NewestMessage

Obtiene el mensaje más reciente de este bloque.

NewestMessageIndex

Obtiene el índice del mensaje más reciente agregado al bloque .

Node

Nodo de lista vinculada, por lo que este bloque de mensajes se puede mantener en una lista vinculada.

OldestMessage

Obtiene el mensaje más antiguo del bloque.

OldestMessageIndex

Obtiene el índice del mensaje más antiguo de este bloque.

Pool

Obtiene el grupo para devolver este recurso a la eliminación. Un grupo debe establecer esta propiedad en la asignación de recursos.

(Heredado de PooledResource<T>)

Métodos

Add(CachedMessage)

Agregue un mensaje de la cola al bloque . Convierte el mensaje de cola en un mensaje almacenado en caché y lo almacena al final del bloque.

Dispose()

Devuelve el elemento al grupo.

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

Obtiene el índice del primer mensaje de este bloque que tiene un token de secuencia en o antes del token proporcionado.

GetNewestSequenceToken(ICacheDataAdapter)

Obtiene el token de secuencia del mensaje más reciente de este bloque.

GetOldestSequenceToken(ICacheDataAdapter)

Obtiene el token de secuencia del mensaje más antiguo de este bloque.

GetSequenceToken(Int32, ICacheDataAdapter)

Obtiene el token de secuencia del mensaje almacenado en caché un índice proporcionado.

OnResetState()

Restablece este estado de bloques al de un bloque vacío.

Remove()

Quita un mensaje del inicio del bloque (datos más antiguos).

SignalPurge()

Si este objeto se va a usar en un grupo de objetos de tamaño fijo, esta llamada se debe invalidar con la implementación de purga que devuelve el objeto al grupo.

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

Intenta encontrar el primer mensaje en el bloque que forma parte de la secuencia proporcionada.

TryFindFirstMessage(StreamId, ICacheDataAdapter, Int32)

Intenta encontrar el primer mensaje en el bloque que forma parte de la secuencia proporcionada.

TryFindNextMessage(Int32, IStreamIdentity, ICacheDataAdapter, Int32)

Intenta obtener el siguiente mensaje de la secuencia proporcionada, empezando por el índice inicial.

TryFindNextMessage(Int32, StreamId, ICacheDataAdapter, Int32)

Intenta obtener el siguiente mensaje de la secuencia proporcionada, empezando por el índice inicial.

Se aplica a