protected override void Dispose(bool disposing) { if (disposing) { // Release managed resources. if (marshaller != null) { marshaller.FreeMemory(); marshaller.Dispose(); marshaller = null; } } base.Dispose(disposing); }
internal MemoryRegion(Marshaler marshaler, IntPtr ptr, int size) { this.marshaler = marshaler; this.region = ptr; this.regionSize = size; }
/// <summary> /// Create in instance of TypeMarshalSafeIntPtr. /// </summary> /// <param name="marshaller">The marshaller.</param> /// <param name="ptr">The pointer of unmanaged memory.</param> internal TypeMarshalSafeIntPtr(Marshaler marshaller, IntPtr ptr) : base(ptr) { this.marshaller = marshaller; }