TransportBindingElement.MaxBufferPoolSize Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets or sets the maximum size, in bytes, of any buffer pools used by the transport.

Namespace:   System.ServiceModel.Channels
Assembly:  System.ServiceModel (in System.ServiceModel.dll)

public virtual long MaxBufferPoolSize { get; set; }

Property Value

Type: System.Int64

The maximum size of the buffer pool. The default is 524,288 bytes.

Many parts of WCF use buffers. Creating and destroying buffers each time they are used is expensive, and garbage collection for buffers is also expensive.

With buffer pools, you can take a buffer from the pool, use it, and return it to the pool once you are done. Thus the overhead in creating and destroying buffers is avoided. The downside is that there is an increase in memory usage because your buffers are not getting garbage collected. If the MaxBufferPoolSize is set to 0, no buffers are returned to the pool, and instead garbage collection begins.

.NET Framework
Available since 3.0
Return to top