private void ForceRecycle()
        {
            IntPtr pBuffer = Interlocked.Exchange(ref this._data, IntPtr.Zero);

            if (pBuffer != IntPtr.Zero)
            {
                base._free    = 0;
                base._recycle = false;
                if (HttpRuntime.UseIntegratedPipeline)
                {
                    UnsafeIISMethods.MgdReturnBuffer(pBuffer);
                }
                else
                {
                    UnsafeNativeMethods.BufferPoolReleaseBuffer(pBuffer);
                }
                GC.SuppressFinalize(this);
            }
        }