memory_get_peak_usage()是返回整个php的内存还是仅返回当前执行的内存?

时间:2011-08-29 18:10:50

标签: php function memory

假设我拨打memory_get_peak_usage(true)并返回2.5MB

  • 这是否意味着整个php(所有客户端)都造成了这个高峰?

  • 或者是否意味着如果我有100个客户同时访问,那么峰值可能为250MB?

1 个答案:

答案 0 :(得分:6)

仅返回当前请求的峰值使用情况。

  

来自the doc

     

返回已分配给PHP脚本的内存峰值(以字节为单位)。


要从文档中删除任何含糊之处:

memory_get_peak_usage()调用内部zend_memory_peak_usage()函数,该函数返回AG(mm_heap)->peak

AG(mm_heap)->peak重置为zend_mm_shutdown()中的0,在每次请求结束时都会在php_request_shutdown()中调用。

所以它只是当前请求的峰值内存使用量。