首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Memory_get_peak_usage(真)是做什么的?

Memory_get_peak_usage(真)是做什么的?
EN

Stack Overflow用户
提问于 2013-09-19 15:39:25
回答 1查看 2.9K关注 0票数 6

PHP手册说:

int memory_get_peak_usage ([ bool $real_usage = false ] ) 返回分配给PHP脚本的内存峰值(以字节为单位)。 参数 real_usage 将此设置为TRUE以获得从系统分配的内存的实际大小。如果没有设置或FALSE,则报告emalloc()使用的内存。

那么,emalloc()怎么不是真正的用法,TRUE如何计算实际的内存使用量呢?

关于StackOverflow的这个问题也问了同样的问题,但唯一的答案是,除了将一些分配数舍入到下一个千字节之外,没有详细讨论计算是如何完成的。

关于在使用FALSETRUE时引擎盖下发生了什么,还有更广泛的答案吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-09-19 16:05:54

如前所述,这个问题是一个dup问题。

然而,我认为我应该从不同的答案和评论中总结我的理解:

  • memory_get_peak_usage(false)返回PHP脚本使用的确切内存。用于比较PHP脚本不同部分的精确内存消耗。
  • memory_get_peak_usage(true)将从系统分配给PHP的内存返回给PHP脚本,因为Zend以256 to块分配内存。用于了解给定PHP脚本对系统的实际影响。

因此,基本上,memory_get_peak_usage(true)应该是memory_get_peak_usage(false)四舍五入到下一个256KB

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18899134

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档