gpt4 book ai didi

c++ - 如果程序的内存消耗超过限制,如何让我的程序停止?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:28:05 25 4
gpt4 key购买 nike

我开发了一个 C++ 框架,用于在定义良好的环境(我们监督下的 Linux 机器)中运行用户代码。

我想防止编写错误的模块开始耗尽机器的所有内存。当我开发框架时,如果它的内存消耗太高,我是否可以简单地强制程序自行停止?我应该为此使用什么 api 或工具?

最佳答案

setrlimit 提供了一种控制进程资源限制的简单机制。 .但这并没有隔离流程(对于不受信任的第三方代码应该如此),它只是对其施加了一些限制。要将进程与系统的其余部分正确隔离,您应该使用 VM,或者使用 cgroups 和内核命名空间——最好不要手动,而是通过一些现有的库或框架(例如 Docker)。

关于c++ - 如果程序的内存消耗超过限制,如何让我的程序停止?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30298408/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com