获得所使用的内存量,客观地和可用的百分比

时间:2014-01-16 21:36:41

标签: php unix

我想得到我试图运行的程序使用的内存百分比。它只能在基于Unix的环境中运行。

据我所知,这应该是PHP中的real_usage()memory_get_usage(),但我不知道哪些是我应该使用的 - 几乎没有文档和一些文档说这是不可能。

我希望在使用75%的可用内存时禁止执行某个条件,或者125MB - 以先到者为准。我如何在PHP中执行此操作?

1 个答案:

答案 0 :(得分:2)

在PHP脚本中,您可以添加以下检查以查看该过程是否大约为125MB:

 if( round(memory_get_usage(true)/1048576) < 125) {
     //do your stuff here....
  }

这只会告诉您当前PHP脚本使用的内存。

对于Linux中的整个系统内存和百分比,请让php打开本地文件/proc/meminfo。它不断更新自己,文件的前两行具有当前内存最大值和使用率。您可以使用它来计算整个系统的百分比。

您可以使用古老的file()/proc/meminfo读入数组,然后解析前2个数组成员中的整数。

祝你好运!