次の方法で共有


CachedMessageBlock クラス

定義

CachedMessageBlock は、キャッシュされたメッセージの追跡データを含む密にパックされた構造体のブロックです。 このデータは、GC圧力を減らすために密に詰め込まれます。 追跡データは、順序付けられたキュー メッセージをストリームで処理するキャッシュをウォークするために、キュー キャッシュによって使用されます。

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

コンストラクター

CachedMessageBlock(Int32)

キャッシュされたメッセージのブロック。

プロパティ

HasCapacity

ブロックにさらにメッセージを追加できるかどうかを示す値を取得します。

IsEmpty

このブロックが空かどうかを示す値を取得します。

Item[Int32]

指定されたインデックスにあるキャッシュされたメッセージにアクセスします。

ItemCount

このブロック内のメッセージの数を取得します。

NewestMessage

このブロック内の最新のメッセージを取得します。

NewestMessageIndex

ブロックに追加された最新のメッセージのインデックスを取得します。

Node

リンク リスト ノード。これにより、このメッセージ ブロックをリンク リストに保持できます。

OldestMessage

ブロック内の最も古いメッセージを取得します。

OldestMessageIndex

このブロック内の最も古いメッセージのインデックスを取得します。

Pool

破棄時にこのリソースを返すプールを取得します。 プールは、リソースの割り当て時にこのプロパティを設定する必要があります。

(継承元 PooledResource<T>)

メソッド

Add(CachedMessage)

キューから ブロックにメッセージを追加します。 キュー メッセージをキャッシュされたメッセージに変換し、ブロックの末尾に格納します。

Dispose()

項目をプールに返します。

(継承元 PooledResource<T>)
GetIndexOfFirstMessageLessThanOrEqualTo(StreamSequenceToken)

指定されたトークンの前後にシーケンス トークンを持つ、このブロック内の最初のメッセージのインデックスを取得します

GetNewestSequenceToken(ICacheDataAdapter)

このブロック内の最新のメッセージのシーケンス トークンを取得します

GetOldestSequenceToken(ICacheDataAdapter)

このブロック内の最も古いメッセージのシーケンス トークンを取得します

GetSequenceToken(Int32, ICacheDataAdapter)

指定されたインデックスをキャッシュされたメッセージのシーケンス トークンを取得します

OnResetState()

このブロックの状態を空のブロックの状態にリセットします。

Remove()

ブロックの先頭からメッセージを削除します (最も古いデータ)。

SignalPurge()

このオブジェクトを固定サイズのオブジェクト プールで使用する場合、この呼び出しは、そのオブジェクトをプールに返す消去実装でオーバーライドする必要があります。

(継承元 PooledResource<T>)
TryFindFirstMessage(IStreamIdentity, ICacheDataAdapter, Int32)

指定されたストリームの一部である ブロック内の最初のメッセージの検索を試みます。

TryFindFirstMessage(StreamId, ICacheDataAdapter, Int32)

指定されたストリームの一部である ブロック内の最初のメッセージの検索を試みます。

TryFindNextMessage(Int32, IStreamIdentity, ICacheDataAdapter, Int32)

指定されたストリームから、開始インデックスから次のメッセージを取得しようとします。

TryFindNextMessage(Int32, StreamId, ICacheDataAdapter, Int32)

指定されたストリームから、開始インデックスから次のメッセージを取得しようとします。

適用対象