BufferManager Class

Definition

Many Windows Communication Foundation (WCF) features require the use of buffers, which are expensive to create and destroy. You can use the BufferManager class to manage a buffer pool. The pool and its buffers are created when you instantiate this class and destroyed when the buffer pool is reclaimed by garbage collection. Every time you need to use a buffer, you take one from the pool, use it, and return it to the pool when done. This process is much faster than creating and destroying a buffer every time you need to use one.

public abstract class BufferManager
Inheritance
BufferManager

Remarks

This class is commonly used while implementing custom encoders or custom transport channels.

Constructors

BufferManager()

Initializes a new instance of the BufferManager class.

Methods

Clear()

Releases the buffers currently cached in the manager.

CreateBufferManager(Int64, Int32)

Creates a new BufferManager with a specified maximum buffer pool size and a maximum size for each individual buffer in the pool.

Equals(Object)

Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode()

Serves as the default hash function.

(Inherited from Object)
GetType()

Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone()

Creates a shallow copy of the current Object.

(Inherited from Object)
ReturnBuffer(Byte[])

Returns a buffer to the pool.

TakeBuffer(Int32)

Gets a buffer of at least the specified size from the pool.

ToString()

Returns a string that represents the current object.

(Inherited from Object)

Applies to

Product Versions
.NET Core 1.0, Core 1.1, 8 (package-provided)
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7 (package-provided), 4.7, 4.7.1 (package-provided), 4.7.1, 4.7.2 (package-provided), 4.7.2, 4.8 (package-provided), 4.8, 4.8.1
.NET Standard 2.0 (package-provided)
UWP 10.0