Ejemplo n.º 1
0
 public static void Close()
 {
     if (_DEnginer != IntPtr.Zero)
     {
         ArcWrapper.DClose(_DEnginer);
         _DEnginer = IntPtr.Zero;
     }
     if (_DBuffer != IntPtr.Zero)
     {
         Marshal.FreeCoTaskMem(_DBuffer);
         _DBuffer = IntPtr.Zero;
     }
     for (int i = 0; i < TaskNum; i++)
     {
         if (_REngine[i] != IntPtr.Zero)
         {
             ArcWrapper.RClose(_REngine[i]);
             _REngine[i] = IntPtr.Zero;
         }
         if (_RBuffer[i] != IntPtr.Zero)
         {
             Marshal.FreeCoTaskMem(_RBuffer[i]);
             _RBuffer[i] = IntPtr.Zero;
         }
         foreach (var item in _FaceLib[i].Items)
         {
             Marshal.FreeCoTaskMem(item.FaceModel.PFeature);
         }
     }
     foreach (var item in CacheFaceResults.Items)
     {
         Marshal.FreeCoTaskMem(item.FaceModel.PFeature);
     }
 }
Ejemplo n.º 2
0
 public static void Close()
 {
     if (_DEnginer != IntPtr.Zero)
     {
         ArcWrapper.DClose(_DEnginer);
         _DEnginer = IntPtr.Zero;
     }
     if (_REngine != IntPtr.Zero)
     {
         ArcWrapper.RClose(_REngine);
         _REngine = IntPtr.Zero;
     }
     if (_DBuffer != IntPtr.Zero)
     {
         Marshal.FreeCoTaskMem(_DBuffer);
         _DBuffer = IntPtr.Zero;
         Marshal.FreeCoTaskMem(_RBuffer);
         _RBuffer = IntPtr.Zero;
     }
     foreach (var item in _FaceLib.Items)
     {
         Marshal.FreeCoTaskMem(item.FaceModel.pbFeature);
     }
 }