Freigeben über


BasicHttpBinding.MaxBufferPoolSize Eigenschaft

Definition

Ruft die maximale Speicherkapazität in Byte ab, die vom Manager der Nachrichtenpuffer verwendet werden kann, die Nachrichten aus dem Kanal empfangen, oder legt diese fest.

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

Eigenschaftswert

Int64

Die maximale Speicherkapazität in Byte, die vom Puffer-Manager für Nachrichten verwendet werden kann. Der Standardwert ist 524288 (0x80000) Bytes.

Beispiele

Im folgenden Beispiel wird diese Eigenschaft auf das Doppelte des Standardwerts festgelegt.

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

Der Wert dieser Eigenschaft kann auch in der Konfigurationsdatei festgelegt werden.

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

Hinweise

Der BufferManager reduziert den Pufferaufwand durch Verwendung eines Pufferpools. Puffer sind zur Verarbeitung von Nachrichten durch den Dienst erforderlich, wenn sie aus dem Kanal eintreffen. Wenn die Speicherkapazität des Pufferpools zur Verarbeitung der Nachrichten nicht ausreicht, muss der BufferManager zusätzliche Speicherkapazität aus dem CLR-Heap zuweisen. Dadurch wird die Auslastung der Garbage Collection erhöht. Eine umfangreiche Zuordnung aus dem CLR-Garbage Heap ist ein Hinweis darauf, dass die Pufferpoolgröße zu klein ist und dass die Leistung mit einer größeren Zuordnung verbessert werden kann, indem der MaxBufferPoolSize-Grenzwert erhöht wird.

Gilt für