c++ - 关于GLIBC的小内存应用缓存机制的问题。
问题描述
我在本地centos环境下启动了一个程序A,发现内存增长缓慢。运行1天后,发现内存从100多MB增长到1G多。我用valgrind检测到没有内存泄漏,然后启动了一个程序B。申请大量内存,我发现A程序的内存在慢慢减少,回到100多MB,所以应该是GLIBC缓存机制。后来我在AWS云中部署A程序,发现内存已经从100多MB增长到1G多。然后打开B程序,发现A的内存没有返回给系统。最后,B 程序触发 oom-killer。这是什么原因,会不会有相关的系统设置来决定是否开启GLIBC的缓存机制呢?
解决方案
推荐阅读
- ios - 我正在尝试在 UITabBar 顶部获取视图,一旦使用 Swift 出现视图,标签栏就会隐藏
- android - 有没有更好的基于源代码片段在 Android 中导航的方法?
- h2o - GAM predict:返回线性预测器的每个分量?
- sql - sed - 替换不同行中模式之间的多行字符串
- kubernetes - Helm:“模板”关键字
- javascript - JS/传单。事件 (.on ('click', onClick)) 不会触发
- php - 来自已保存文件的漂亮打印 curl 原始请求
- presto - prestodb vs prestosql 插入现有分区行为
- java - 从 API 获取图像并将其设置在 ImageView 中
- excel - 使用 VBA 中的命令按钮,它必须计算和过滤掉值,然后更改它们