internal void RemoveItems(int count)
{
var cnt = (count + _start) % _bufLen;
if (_end > _start)
{
if (cnt > _end || cnt < _start) throw new ArgumentOutOfRangeException();
}
else
{
// wrap-around
if (cnt < _start && cnt > _end) throw new ArgumentOutOfRangeException();
}
_start = cnt;
}