次の方法で共有


NetMsmqBinding.MaxBufferPoolSize プロパティ

定義

チャネルからメッセージを受け取るメッセージ バッファー マネージャーが使用するために割り当てられる最大メモリ量を取得または設定します。

public:
 property long MaxBufferPoolSize { long get(); void set(long value); };
public long MaxBufferPoolSize { get; set; }
member this.MaxBufferPoolSize : int64 with get, set
Public Property MaxBufferPoolSize As Long

プロパティ値

メッセージ バッファー マネージャーが使用できるメモリの最大容量 (バイト単位)。 既定値は 524288 (0x80000) バイトです。

次のコードは、MaxBufferPoolSize プロパティを設定する方法を示しています。

NetMsmqBinding binding = new NetMsmqBinding();
binding.MaxBufferPoolSize = 524000L;

注釈

BufferManager は、バッファー プールを使用することで、バッファーの使用コストを最小化します。 バッファーは、チャネルから出てくるメッセージをサービスが処理するときに必要です。 メッセージの読み込み処理に十分なメモリがバッファー プールにない場合、BufferManager は、CLR ヒープから追加のメモリを割り当てる必要があります。これにより、ガベージ コレクションのオーバーヘッドが増加します。 CLR ガベージ ヒープから多大な割り当てが行われることは、バッファー プール サイズが小さすぎること、および MaxBufferPoolSize の制限を緩めて割り当てを増やすとパフォーマンスが向上する可能性があることを示します。

適用対象