【发布时间】:2011-05-17 09:33:54
【问题描述】:
在 C++ 中,can 安排在new 失败时调用一个函数。有没有办法在malloc 失败时调用函数?假设 malloc 是从我不想更改的第三方库调用的。
我认为没有可移植的答案,所以我很乐意接受特定于平台的答案。我在某些平台上使用 Linux+uclibc,在其他平台上使用 Linux+glibc。我打算使用setrlimit 来限制malloc 可以返回的内存量。
【问题讨论】:
-
我们假设您已关闭过度使用。对吗?
-
Conrad:我希望如此,但我并不拥有整个系统,我只是提供一个应用程序。系统设计人员向我承诺了一定数量的 RAM,作为回报,我必须保证保持在该限制范围内。 (这是一款没有交换的嵌入式设备,因此人们非常重视内存预算并确保一切都合适)。