我Marshal.GlobalHAlloc
用来分配内存。如文档所述:“此方法从 Kernel32.dll 公开 Win32 LocalAlloc 函数。”。GlobalAlloc
的文档说它将是 8 字节对齐的,但LocalAlloc
没有说任何关于对齐的内容。
例如,我想分配 1024 字节并确保它与 16 对齐。当我分配 1024+16 字节然后检查指针 % 16 时它会起作用吗?如果结果为 0,则表示内存已对齐,当它不为 0 时,我只是增加指针以符合我的期望。问题是我不知道,如果我有对齐的指针,它真的在物理内存中对齐了吗?