core.stdc.stdlib.malloc和core.memory.GC.maloc之间有什么区别



core.stdc.stdlib.malloccore.memory.GC.malloc之间有什么区别?当程序在禁用GC的情况下运行时,我应该使用以下哪一个?

core.stdc.stdlib.malloc是普通C的malloc,因此内存不会注册到GC。这意味着它将不会被扫描,您必须使用C的free来释放此内存。CCD_ 6由CCD_。你可以同时使用它们。但是,如果使用GC.disable,即使core.memory.GC.malloc分配的内存也不会被释放,直到您启用GC或调用GC.collect

Btw。如果你想更好地控制内存分配,你应该看看https://dlang.org/phobos/std_experimental_allocator.html

最新更新