我对使用动态分配内存的时间限制有点好奇。比如说,对于预计一次运行数周的系统,最初为某些用途分配内存并在较长时间内持续重用该分配的内存是否安全?
是否有重新分配内存的规范?
最佳答案
如果您malloc
一个内存区域并且从不free
它,您可以使用任意长时间(只要您的系统足够可靠:硬件确实会发生故障)从长远来看!)。
如果您 malloc
然后free
相同的内存区域(特别是如果 malloc
和 free 的顺序
不相同或者是随机的)。从长远来看,一些memory fragmentation可能会发生(除非有一些明确的 compaction ,否则您无能为力)。
关于c++ - malloc 分配的内存可以使用多少时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16455572/