/// <summary> /// Gets a buffer from the recycling pool. /// </summary> /// <param name="minimumByteSize">The minimum buffer size.</param> /// <returns>A buffer with at least as many bytes as specified.</returns> public byte[] GetBuffer(int minimumByteSize) { SizedBufferRecycler recycler = _recycler; return(recycler.GetBuffer(minimumByteSize)); }
/// <summary> /// Recycles a previously-retrieved buffer by putting it back into the pool, if that's where it belongs. /// </summary> /// <param name="buffer">The buffer to return to the pool</param> public void RecycleBuffer(byte[] buffer) { SizedBufferRecycler recycler = _recycler; recycler.Recycle(buffer); }
/// <summary> /// Constructs a buffer pool using the ambient settings. /// </summary> public BufferPool() { _recycler = new SizedBufferRecycler(DefaultBufferBytes.Value); }