CachedMessageBlock<TCachedMessage> Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
CachedMessageBlock è un blocco di strutture strettamente compresse contenenti dati di rilevamento per i messaggi memorizzati nella cache. Questi dati sono strettamente compressi per ridurre la pressione GC. I dati di rilevamento vengono usati dalla cache della coda per esaminare la cache che gestisce i messaggi della coda ordinati per flusso.
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))
Parametri di tipo
- TCachedMessage
Struttura strettamente compressa. Lo struct deve contenere solo tipi valore.
- Ereditarietà
Costruttori
CachedMessageBlock<TCachedMessage>(Int32) |
Blocco di messaggi memorizzati nella cache |
Proprietà
HasCapacity |
È possibile aggiungere altri messaggi ai blocchi |
IsEmpty |
Il blocco è vuoto |
Item[Int32] |
Accedere al messaggio memorizzato nella cache in corrispondenza dell'indice specificato. |
ItemCount |
Numero di messaggi in questo blocco |
NewestMessage |
Messaggio più recente in questo blocco |
NewestMessageIndex |
Indice del messaggio più recente aggiunto al blocco |
Node |
Nodo elenco collegato, in modo che questo blocco di messaggi possa essere mantenuto in un elenco collegato |
OldestMessage |
Messaggio meno recente nel blocco |
OldestMessageIndex |
Indice del messaggio meno recente in questo blocco |
Pool |
Ottiene il pool a cui restituire la risorsa al momento dell'eliminazione. Un pool deve impostare questa proprietà sull'allocazione delle risorse. (Ereditato da PooledResource<T>) |
Metodi
Add<TQueueMessage>(TQueueMessage, DateTime, ICacheDataAdapter<TQueueMessage,TCachedMessage>) |
Aggiungere un messaggio dalla coda al blocco . Converte il messaggio della coda in un messaggio memorizzato nella cache e lo archivia alla fine del blocco. |
Dispose() |
Restituisce l'elemento al pool. (Ereditato da PooledResource<T>) |
GetIndexOfFirstMessageLessThanOrEqualTo(StreamSequenceToken, ICacheDataComparer<TCachedMessage>) |
Ottiene l'indice del primo messaggio in questo blocco con un token di sequenza in corrispondenza o prima del token fornito |
GetNewestSequenceToken<TQueueMessage>(ICacheDataAdapter<TQueueMessage,TCachedMessage>) |
Ottiene il token di sequenza del messaggio più recente in questo blocco |
GetOldestSequenceToken<TQueueMessage>(ICacheDataAdapter<TQueueMessage,TCachedMessage>) |
Ottiene il token di sequenza del messaggio meno recente in questo blocco |
GetSequenceToken<TQueueMessage>(Int32, ICacheDataAdapter<TQueueMessage,TCachedMessage>) |
Ottiene il token di sequenza del messaggio memorizzato nella cache di un indice fornito |
OnResetState() |
Reimposta lo stato di questo blocco su quello di un blocco vuoto. |
Remove() |
Rimuove un messaggio dall'inizio del blocco (dati meno recenti). Restituisce true se sono ancora disponibili altri elementi. |
SignalPurge() |
Se questo oggetto deve essere utilizzato in un pool di oggetti a dimensione fissa, questa chiamata deve essere sottoposta a override con l'implementazione dell'eliminazione che restituisce l'oggetto al pool. (Ereditato da PooledResource<T>) |
TryFindFirstMessage(IStreamIdentity, ICacheDataComparer<TCachedMessage>, Int32) |
Tenta di trovare il primo messaggio nel blocco che fa parte del flusso fornito. |
TryFindNextMessage(Int32, IStreamIdentity, ICacheDataComparer<TCachedMessage>, Int32) |
Tenta di ottenere il messaggio successivo dal flusso fornito, a partire dall'indice iniziale. |