protected void ReserveCharBuf(int size)
{
if (CharBuf == null)
{
CharBuf = new char[size];
}
else
{
if (size <= CharBuf.Length) return;
var newLen = Math.Max((int)Math.Min((long)CharBuf.Length * 2, 2147483591 / 2), size);
Array.Resize(ref CharBuf, newLen);
}
}