BasicHttpBinding.MaxBufferPoolSize Propriété

Définition

Obtient ou définit la quantité maximale de mémoire (en octets) allouée au gestionnaire des tampons de messages qui reçoivent des messages du canal.

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

Valeur de propriété

Int64

Quantité de mémoire maximale, en octets, disponible pour le gestionnaire de mémoires tampons de messages. La valeur par défaut est de 524 288 (0x80000) octets.

Exemples

L'exemple de code suivant affecte le double de la valeur par défaut à cette propriété.

BasicHttpBinding binding = new BasicHttpBinding();
// Use double the default value
binding.MaxBufferPoolSize = 0x80000 * 2;

La valeur de cette propriété peut également être définie dans le fichier de configuration.

<configuration>
  <system.serviceModel>

    <bindings>
      <basicHttpBinding>
        <binding name="Binding1">

          <!-- set pool size to double default of 0x80000 -->
          maxBufferPoolSize = 0x100000

          <security mode="None" />
        </binding>
      </basicHttpBinding>
    </bindings>

  </system.serviceModel>

</configuration>

Remarques

Le BufferManager réduit le coût lié à l'utilisation de mémoires tampons à l'aide d'un pool de mémoires tampons. Les mémoires tampons sont requises par le service pour traiter des messages lorsqu'ils sortent du canal. Si la mémoire du pool de mémoires tampons est insuffisante pour traiter la charge de messages, BufferManager doit allouer de la mémoire additionnelle provenant du tas CLR, ce qui augmente le traitement de l'opération garbage collection. Une allocation étendue du tas de mémoires mémoire CLR indique que la taille du pool de mémoires tampons est trop petite et que les performances peuvent être améliorées avec une allocation plus importante en augmentant la limite MaxBufferPoolSize.

S’applique à