PHP 计算出内存最高占用.

PHP 计算出内存最高占用.

代码可以计算出内存是否完全被使用, ini设置处:memory_limit = 1024M  
代码跑完将显示如下信息:

memory_limit:320M  
all run count: 55924054  
\$data string size:266.67MB  
run memory: 266.67MB

可同时打开任务管理器查看内存占用, 可明显看出内存上涨过程.  
运行时间有点长, 请慢慢等待执行完成.  
测试环境, win8 apache2.4.3 PHP5.4.12

<?php  
set_time_limit(0); 
echo ‘memory_limit:‘. $memory = ini_get(‘memory_limit‘).‘‘; 
$string = str_repeat(‘abcde‘,50000);  // 运行字符串, 可修改这儿. 
$memory =($memory+0)*1024*1024; 
$runtime = memory_get_usage(); 
$runcount = abs(($memory / strlen($string)) * 0.99); // 为什么+1? 因为需要留点内存给其它变量或者计算式. 
$i = 0;

while($i < $runcount){ 
    $i ++; 
    $data .= $string; 
}

echo ‘all run count: ‘.$i.‘‘; 
echo ‘\$data string size:‘. sprintf(‘%01.2f‘,strlen($data) / 1024 / 1024) .‘MB ‘; 
echo ‘run memory: ‘. sprintf(‘%01.2f‘,(memory_get_usage() - $runtime) / 1024 / 1024) .‘MB‘;

echo ‘memory_get_peak_usage: ‘.sprintf(‘%01.2f‘,(memory_get_peak_usage() - $runtime) / 1024 / 1024) .‘MB<br>‘; 
exit();

时间: 2024-10-12 09:38:36

PHP 计算出内存最高占用.的相关文章

输入一个int型数据,计算出它在内存中存储时含1的个数

/******************************************************** 输入一个int型数据,计算出它在内存中存储时含1的个数 比如: 输入:5 输出:2 ********************************************************/ #include<iostream> int CountOne(int num) { int count = 0; while(num){ count++; num = num&am

数组作为参数传递的时候,被调用的函数内无法计算出数组的大小

  1 #include <stdio.h> 2 #include <stdlib.h> 3 int ff (int c[])//被调用的函数 4 { 5 int e; 6 e = sizeof (c) ; 7 return e; 8 } 9 int main(void) { 10 11 int c[7] = {1,2,3,6,2,2,7}; 12 13 int e,k; 14 e = sizeof (c); 15 16 k = ff(c); 17 printf("%d#

Sizeof的计算看内存分配

本文记录了有关sizeof的一些计算,主要有下面的四种情况:(如有错误,敬请留言) 使用sizeof()计算普通变量所占用的内存空间 sizeof计算类对象所占用空间的大小-用到了字节对齐 sixeof计算含有虚函数的类对象的空间大小 sizeof计算虚拟继承的类对象的空间大小 使用sizeof()计算普通变量所占用的内存空间 #include <iostream> #include <stdlib.h> using namespace std; //如果数组变量被传入函数中做si

java程序性能优化之找出内存溢出元凶

我曾经在刚入行的时候做过一个小的swing程序,用到了java SE,swing,Thread等东东,当初经验少也没有做过严格的性能测试,布到生产环境用了一段时间后发现那个小程序有时候会抛java.lang.OutOfMemoryError异常,就是java的内存溢出.当时也上网查了不少资料,试过一些办法,代码也稍微做了些优化,但是有一个问题我始终是找不到解决的方案 - 不知为什么子窗体关闭后java的垃圾回收机制无法回收其资源,因为这个程序可能要经常开关一些子窗体,那么这些子窗体关闭后无法释放

在固定宽度 下计算出实际的行高

//根据字符串内容的多少  在固定宽度 下计算出实际的行高 - (CGFloat)HelperTextHeightFromTextString:(NSString *)text width:(CGFloat)textWidth fontSize:(CGFloat)size { if ([self heperGetCurrentIOS] >= 7.0) { //iOS7之后 /* 第一个参数: 预设空间 宽度固定  高度预设 一个最大值 第二个参数: 行间距 如果超出范围是否截断 第三个参数: 属

对指定日期计算出N天后的日期问题

指定日期计算出N天后的日期问题 问题描述:先输入起始日期,再输入任意天数n,求n天后的日期. 源代码一(参考http://zhidao.baidu.com/linkurl=0BxF0QvTywzuRkLUFj6ulUQKYqp97CjUOZBV1UUmXoCkS9HNyOT2axHkcOsRLi-xlB_JE6KvdglSD23S35EUXK) #include<stdio.h> <span style="font-family:SimHei;font-size:14px;&q

输入年月日计算出是该年的第多少天

插件和工具介绍内容均收集于网络,太多了就不一一注明了,在此谢过! 1.Charles 为了调试与服务器端的网络通讯协议,常常需要截取网络封包来分析.Charles通过将自己设置成系统的网络访问代理服务器,使得所有的网络访问请求都通过它来完成,从而实现了网络封包的截取和分析.一个可查看所有HTTP和SSL/HTTPS流量的工具.这款工具对于你测试和服务器端进行交互的应用非常有用 2.xScope xScope带有六种不同的工具,帮助每一个设计者快速.精确的完成工作,这些工具功能灵活.强大,包括∶量

输入年份和天数计算出几月几号

//转换函数如下,其中通过指针同时向主函数传回月份和天数 void month_day(int year, int yearday, int *month, int *day){ //k月份,leap判断是否闰年(0非闰年1闰年) int k, leap; int tab[2][13] = { { 0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 }, { 0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30

课堂练习——计算法能够计算出读者购买一批书的最低价格。

1.题目. 书店针对<哈利波特>系列书籍进行促销活动,一共5卷,用编号0.1.2.3.4表示, 单独一卷售价8元, 具体折扣如下所示:                          本数                  折扣                          2                       5%                          3                       10%                          4