FreeMemory() 공개 메소드

public FreeMemory ( ) : void
리턴 void
예제 #1
0
 public void FreeMemory(bool freecache)
 {
     lock (_lock)
     {
         _internalOP = true;
         _log("freeing memory");
         _deleted.FreeMemory();
         _hash.SaveIndex();
         foreach (Cache c in _index.Values)
         {
             if (freecache)
             {
                 long off = SaveBitmap(c.GetCompressedBits(), c.LastBitSaveLength, c.FileOffset);
                 c.isDirty    = false;
                 c.FileOffset = off;
                 c.FreeMemory(true);
             }
             else
             {
                 c.FreeMemory(false);
             }
         }
         _internalOP = false;
     }
 }
예제 #2
0
 public void FreeMemory(bool unload, bool freeUncompressedMemory = true)
 {
     if (freeUncompressedMemory && _bits != null)
     {
         _bits.FreeMemory();
     }
     if (unload)
     {
         _bits    = null;
         isLoaded = false;
     }
 }