Akka.IO.DirectByteBufferPool.TakeBufferFromPool C# (CSharp) Method

TakeBufferFromPool() private method

private TakeBufferFromPool ( ) : Akka.IO.ByteBuffer
return Akka.IO.ByteBuffer
        private ByteBuffer TakeBufferFromPool()
        {
            ByteBuffer buffer = null;
            lock (_pool.SyncRoot)
            {
                if (_buffersInPool > 0)
                {
                    _buffersInPool -= 1;
                    buffer = _pool[_buffersInPool];
                }
            }
            if (buffer == null)
                return Allocate(_defaultBufferSize);
            buffer.Clear();
            return buffer;
        }