c++ - malloc 分配的内存可以使用多少时间?

标签 c++ c linux memory-management malloc

我对使用动态分配内存的时间限制有点好奇。比如说,对于预计一次运行数周的系统,最初为某些用途分配内存并在较长时间内持续重用该分配的内存是否安全?

是否有重新分配内存的规范?

最佳答案

如果您malloc一个内存区域并且从不free它,您可以使用任意长时间(只要您的系统足够可靠:硬件确实会发生故障)从长远来看!)。

如果您 malloc 然后free 相同的内存区域(特别是如果 mallocfree 的顺序 不相同或者是随机的)。从长远来看,一些memory fragmentation可能会发生(除非有一些明确的 compaction ,否则您无能为力)。

关于c++ - malloc 分配的内存可以使用多少时间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16455572/

相关文章:

c++ - 一个类的程序实例化——如何?

c++ - 如何重载 += -= *= 等

c++ - 帮助内存泄漏 (malloc)

linux - 一次在 Linux 操作系统上运行的用户总数是多少?

linux - Docker 中的“su”命令返回 'must be run from terminal'

c++ - linux下的Boost Semaphores和EINTR返回码

c++ - 如何将聚合支持到 STL 或类似 STL 的库中

c++ - C++ 中的日期/时间解析(任何格式字符串到 Epoch)

C:填充多维数组

c - 是否可以使用 setitimer 配置 3 个以上的计时器?