CachedMessageBlock<TCachedMessage> Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
CachedMessageBlock es un bloque de estructuras estrechamente empaquetadas que contienen datos de seguimiento para 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 caché que atiende los mensajes ordenados de la cola por secuencia.
public class CachedMessageBlock<TCachedMessage> : Orleans.Providers.Streams.Common.PooledResource<Orleans.Providers.Streams.Common.CachedMessageBlock<TCachedMessage>> where TCachedMessage : struct
type CachedMessageBlock<'CachedMessage (requires 'CachedMessage : struct)> = class
inherit PooledResource<CachedMessageBlock<'CachedMessage>>
Public Class CachedMessageBlock(Of TCachedMessage)
Inherits PooledResource(Of CachedMessageBlock(Of TCachedMessage))
Parámetros de tipo
- TCachedMessage
Estructura estrechamente empaquetada. La estructura debe contener solo tipos de valor.
- Herencia
Constructores
CachedMessageBlock<TCachedMessage>(Int32) |
Bloque de mensajes almacenados en caché |
Propiedades
HasCapacity |
Se pueden agregar más mensajes a los bloques |
IsEmpty |
El bloque está vacío |
Item[Int32] |
Acceda al mensaje almacenado en caché en el índice proporcionado. |
ItemCount |
Recuento de mensajes en este bloque |
NewestMessage |
Mensaje más reciente de este bloque |
NewestMessageIndex |
Í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 |
Mensaje más antiguo del bloque |
OldestMessageIndex |
Índice del mensaje más antiguo de este bloque |
Pool |
Obtiene el grupo al que se va a devolver este recurso tras su eliminación. Un grupo debe establecer esta propiedad tras la asignación de recursos. (Heredado de PooledResource<T>) |
Métodos
Add<TQueueMessage>(TQueueMessage, DateTime, ICacheDataAdapter<TQueueMessage,TCachedMessage>) |
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, ICacheDataComparer<TCachedMessage>) |
Obtiene el índice del primer mensaje de este bloque que tiene un token de secuencia en o antes del token proporcionado. |
GetNewestSequenceToken<TQueueMessage>(ICacheDataAdapter<TQueueMessage,TCachedMessage>) |
Obtiene el token de secuencia del mensaje más reciente de este bloque. |
GetOldestSequenceToken<TQueueMessage>(ICacheDataAdapter<TQueueMessage,TCachedMessage>) |
Obtiene el token de secuencia del mensaje más antiguo de este bloque. |
GetSequenceToken<TQueueMessage>(Int32, ICacheDataAdapter<TQueueMessage,TCachedMessage>) |
Obtiene el token de secuencia del mensaje almacenado en caché un índice proporcionado. |
OnResetState() |
Restablece este estado bloquea el de un bloque vacío. |
Remove() |
Quita un mensaje del inicio del bloque (datos más antiguos). Devuelve true si todavía hay más elementos disponibles. |
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, ICacheDataComparer<TCachedMessage>, Int32) |
Intenta encontrar el primer mensaje del bloque que forma parte de la secuencia proporcionada. |
TryFindNextMessage(Int32, IStreamIdentity, ICacheDataComparer<TCachedMessage>, Int32) |
Intenta obtener el siguiente mensaje de la secuencia proporcionada, empezando por el índice de inicio. |