protected override void Dispose(bool disposing) { if (!Slab.IsActive) { ThrowHelper.ThrowObjectDisposedException(ExceptionArgument.MemoryPoolBlock); } if (Volatile.Read(ref _pinCount) > 0) { ThrowHelper.ThrowInvalidOperationException_ReturningPinnedBlock(); } Pool.Return(this); }