// attempts to allocate using the supplied buffer manager, falls back to the default buffer manager on failure static ManagedBuffer AllocateBuffer(int size, InternalBufferManager bufferManager) { if (bufferManager != null) { byte[] buffer = bufferManager.TakeBuffer(size); if (buffer != null) { return(new ManagedBuffer(buffer, bufferManager)); } } return(new ManagedBuffer(BufferManager.TakeBuffer(size), BufferManager)); }
// attempts to allocate using the supplied buffer manager, falls back to the default buffer manager on failure static ManagedBuffer AllocateBuffer(int size, InternalBufferManager bufferManager) { if (bufferManager != null) { byte[] buffer = bufferManager.TakeBuffer(size); if (buffer != null) { return new ManagedBuffer(buffer, bufferManager); } } return new ManagedBuffer(BufferManager.TakeBuffer(size), BufferManager); }