CachedMessageBlock<TCachedMessage> 类

定义

CachedMessageBlock 是一个紧密打包的结构块,其中包含缓存消息的跟踪数据。 此数据紧密打包,以减小 GC 压力。 队列缓存使用跟踪数据来遍视按流提供有序队列消息的缓存。

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

类型参数

TCachedMessage

紧密打包的结构。 结构应仅包含值类型。

继承
CachedMessageBlock<TCachedMessage>

构造函数

CachedMessageBlock<TCachedMessage>(Int32)

阻止缓存的消息

属性

HasCapacity

可以向块添加更多消息

IsEmpty

块为空

Item[Int32]

访问提供的索引处的缓存消息。

ItemCount

此块中的消息计数

NewestMessage

此块中的最新消息

NewestMessageIndex

添加到块的最新消息的索引

Node

链接列表节点,因此此消息块可以保留在链接列表中

OldestMessage

块中最早的消息

OldestMessageIndex

此块中最早消息的索引

Pool

获取在处置时要将此资源返回到的池。 池必须在资源分配时设置此属性。

(继承自 PooledResource<T>)

方法

Add<TQueueMessage>(TQueueMessage, DateTime, ICacheDataAdapter<TQueueMessage,TCachedMessage>)

将队列中的消息添加到 块。 将队列消息转换为缓存的消息,并将其存储在 块的末尾。

Dispose()

返回池中的项。

(继承自 PooledResource<T>)
GetIndexOfFirstMessageLessThanOrEqualTo(StreamSequenceToken, ICacheDataComparer<TCachedMessage>)

获取此块中第一个消息的索引,该消息在提供的标记处或之前具有序列标记

GetNewestSequenceToken<TQueueMessage>(ICacheDataAdapter<TQueueMessage,TCachedMessage>)

获取此块中最新消息的序列标记

GetOldestSequenceToken<TQueueMessage>(ICacheDataAdapter<TQueueMessage,TCachedMessage>)

获取此块中最早的消息的序列标记

GetSequenceToken<TQueueMessage>(Int32, ICacheDataAdapter<TQueueMessage,TCachedMessage>)

获取所提供索引的缓存消息的序列标记

OnResetState()

将此块状态重置为空块的状态。

Remove()

从块开头删除消息, (最早的数据) 。 如果更多项仍然可用,则返回 true。

SignalPurge()

如果要在固定大小的对象池中使用此对象,则应使用将对象返回到池的清除实现重写此调用。

(继承自 PooledResource<T>)
TryFindFirstMessage(IStreamIdentity, ICacheDataComparer<TCachedMessage>, Int32)

尝试在块中查找属于所提供流的第一条消息。

TryFindNextMessage(Int32, IStreamIdentity, ICacheDataComparer<TCachedMessage>, Int32)

尝试从提供的流中获取下一条消息,从起始索引开始。

适用于