使用<代码>的疾病 Marsal.Copy ,Marshal.Read*
and Marshal. 写作*
,因此我很想知道,是否有办法强迫投放一个未管理的记忆点(<代码>IntPtr)。
与此类似:
IntPtr pointer = Marshal.AllocateHGlobal(sizeof(Foo));
Foo bar = (Foo)pointer;
bar.fooBar = someValue;
// call some API
Marshal.FreeHGlobal(pointer);
bar = null; // would be necessary?