GSF.IO.Unmanaged.MemoryPoolPageList.Dispose C# (CSharp) Method

Dispose() public method

Disposes of all of the memory on the list.
public Dispose ( ) : void
return void
        public void Dispose()
        {
            lock (m_syncRoot)
            {
                if (!m_disposed)
                {
                    try
                    {
                        foreach (Memory block in m_memoryBlocks)
                        {
                            block.Dispose();
                        }
                        m_memoryBlockAllocations = 0;
                        m_isPageFree.ClearAll();
                        m_memoryBlocks.Clear();
                    }
                    finally
                    {
                        m_disposed = true; // Prevent duplicate dispose.
                    }
                }
            }
        }

Usage Example

Example #1
0
 /// <summary>
 /// Releases all the resources used by the <see cref="MemoryPool"/> object.
 /// </summary>
 public void Dispose()
 {
     lock (m_syncRoot)
     {
         if (!m_disposed)
         {
             try
             {
                 m_pageList.Dispose();
             }
             finally
             {
                 m_disposed = true; // Prevent duplicate dispose.
             }
         }
     }
 }