BytesRoad.Net.Sockets.ByteVector.Reallocate C# (CSharp) Method

Reallocate() private method

private Reallocate ( int requiredSize ) : void
requiredSize int
return void
        void Reallocate(int requiredSize)
        {
            int newSize = (_capacity > 0) ? _capacity : 1;
            while(newSize < requiredSize)
                newSize <<= 1;

            byte[] data = new byte[newSize];
            if(null != _data)
                _data.CopyTo(data, 0);
            _data = data;
            _capacity = newSize;
        }