当库在退出时没有在c ++中“清理”时会发生什么

时间:2013-01-07 06:59:26

标签: c++ linux exit

我正在运行linux,并且只是想知道在进程死亡之后实际发生了什么,而不是通过在它们或类似的东西上运行终止函数来“清理”的库代码。我看到人们在退出函数上实现特定的清理,而其他人则没有这样做。

1 个答案:

答案 0 :(得分:2)

这取决于......

...关于资源类型。

最佳实践

免费的文件描述符。 (但操作系统为您关闭它们。)

关闭缓冲文件和数据库连接。 (但是标准输出缓冲区将在 exit(3)或从 main()返回时刷新。

但是在退出之前不要释放分配的内存。这是一个很大的浪费时间,可能会导致读回永远不会被使用的页面。