【发布时间】:2019-12-10 01:17:14
【问题描述】:
Postgres uses memory context to manage its memory.
我能想到的这样做的一个好处是将所有内存分配划分到不同的上下文中,以便可以批量释放上下文中的分配。但是,我从未在 C++ 中遇到过类似的概念。是因为在 C++ 中有智能指针因此不需要这样的上下文吗?如果 Postgres 是用 C++ 开发的,它会使用智能指针而不是内存上下文吗?
【问题讨论】:
-
postgres 自述文件不是已经解释了为什么他们添加了 mmgr 层:“内存上下文相对于普通使用 malloc/free 的主要优点是可以释放内存上下文的全部内容轻松,无需请求释放其中的每个单独的块。这比按块记账更快更可靠。"
标签: c++ c postgresql memory