C++程序何时终止内存泄漏问题?

C++程序何时终止内存泄漏问题?,c++,memory-management,memory-leaks,C++,Memory Management,Memory Leaks,我读到一篇文章说 内存泄漏可能不严重,甚至无法通过正常方式检测到。在里面 在现代操作系统中,应用程序使用的普通内存是 当应用程序终止时释放。这意味着内存 可能不会注意到仅运行很短时间的程序中的泄漏 而且很少是严重的 操作系统在终止时自动释放正常内存。所以,若内存泄漏并不严重,那个么在终止后,程序泄漏的内存可能并不重要 但它只提到了正常记忆的情况,我很担心。 有人能解释一下非正常记忆的含义吗?一般来说,有几个哲学上的原因如何;泄漏内存的程序只是程序运行时的一个问题。它将占用比需要更多的内存,甚至可

我读到一篇文章说

内存泄漏可能不严重,甚至无法通过正常方式检测到。在里面 在现代操作系统中,应用程序使用的普通内存是 当应用程序终止时释放。这意味着内存 可能不会注意到仅运行很短时间的程序中的泄漏 而且很少是严重的

操作系统在终止时自动释放正常内存。所以,若内存泄漏并不严重,那个么在终止后,程序泄漏的内存可能并不重要

但它只提到了正常记忆的情况,我很担心。
有人能解释一下非正常记忆的含义吗?

一般来说,有几个哲学上的原因如何;泄漏内存的程序只是程序运行时的一个问题。它将占用比需要更多的内存,甚至可能耗尽。但是,一旦程序终止,操作系统内核将回收程序分配的所有内存,因此所有内存都将再次释放并可用于其他用途


在某些情况下,在关机时故意泄漏内存实际上是一种相当常见的伎俩。如果您知道您的对象析构函数不会执行任何在程序关闭时会产生任何后果的工作,那么在您终止时泄漏对象并让操作系统清理会更快,而不是运行所有析构函数。然而只有当你有充分的理由并且确实知道你在做什么以及为什么要这样做时,才可以这样做。

在你提到的部分后面的第三个要点中,它提到了共享内存,它不会在终止时自动释放。@Dan Mašek什么是共享内存?这是否意味着通过进程共享内存?是的,用作IPC机制。是的,速度从一开始就是我关心的问题之一。另一个是关于一条断开的线。我有好几次不得不拆线。我并不担心终止后分离线程中的资源。听到这是一个普通的把戏,我感到非常欣慰。