private protected unsafe UnmanagedMemory(int length, bool zeroMem) { var size = SizeOf(length); address = Marshal.AllocHGlobal(new IntPtr(size)); GC.AddMemoryPressure(size); Length = length; if (zeroMem) { Intrinsics.ClearBits(address.ToPointer(), size); } owner = true; }