我正在编写一个C程序,它在Linux shell的后台运行,如果总内存消耗超过总内存的85%,那么它将打印出一条警告。检查是否创建了新进程的最佳方法是什么(我想在每次创建进程时检查内存值)?
发布于 2015-05-02 13:40:45
确定进程何时创建(和退出)的最有效方法是use the proc connector。它的使用有些复杂,但在事件发生时会立即通知您的流程。
但是,请记住,进程在运行时的内存使用量可能会发生巨大变化。监视正在创建的进程几乎肯定不足以满足您的需求;您需要定期轮询内存使用情况。(除了使用内存控制器运行cgroup中的进程并注册OOM处理程序之外,没有通用的方法来获取系统内存使用的通知。您不会想这样做的。)
https://stackoverflow.com/questions/29998572
复制相似问题