内存泄漏和代码性能

Memory leak and performance of the code

本文关键字:性能 代码 泄漏 内存      更新时间:2023-10-16

修复内存泄漏是一件好事,但我想知道除了内存问题之外,内存泄漏修复是否也有助于提高性能。

一般来说,是的。主要原因是由于内存泄漏,您的程序会不断从系统中获取不会在缓存中的新内存。如果正确释放内存,您很快就会恢复相同的内存,并且它已经在缓存中。

很可能不是很明显。它可能会稍微提高缓存性能。如果您的系统在没有可用内存的情况下运行,这也可能会产生性能差异,但几乎可以肯定的是,您的系统中会有更大、更明显的性能瓶颈。

内存泄漏实际上以某种方式提高了性能,因为您可以节省解除分配 XD 的时间。但是,当然,当可用内存不足时,您的系统肯定会遇到某种性能问题。

这可能在很大程度上

取决于您的代码。例如,delete 是调用对象的析构函数(除了花时间释放内存),这可能很耗时,具体取决于析构函数的代码。另一方面,缓存未命中与小对象相关,而页面错误与非常大的对象有关,因此避免内存泄漏也可以显着提高性能。

也就是说,性能优化很可能比这低得多。