CodeIgniter源码阅读(3)Benchmark.php基准测试类
本帖最后由 actionbi 于 2012-3-29 15:54 编辑//@基准测试类被load_class('Benchmark', 'core')到了CodeIgniter.php中,所以也是一个可以全局使用的类。
//如需使用只需要定义时间点即可。$BM->mare('flag_start') 和 $BM->mark('flag_end')
函数不难读懂,其实就是将标记的时间点的时间保存到数组中,然后如果要想求得特定时间段的程序运行时间时,只需要将两个时间点的microtime()做减法.本人初读CI源码,目光浅陋。文中如有错误,劳烦邮件到actionbi2010@gmail.com 我会立马登陆论坛修改
class CI_Benchmark {
var $marker = array();
function mark($name)
{
$this->marker[$name] = microtime();
}
function elapsed_time($point1 = '', $point2 = '', $decimals = 4)
{
if ($point1 == '')
{
return '{elapsed_time}';
}
if ( ! isset($this->marker[$point1]))
{
return '';
}
if ( ! isset($this->marker[$point2]))
{
$this->marker[$point2] = microtime();
}
list($sm, $ss) = explode(' ', $this->marker[$point1]);
list($em, $es) = explode(' ', $this->marker[$point2]);
return number_format(($em + $es) - ($sm + $ss), $decimals);
}
function memory_usage()
{
return '{memory_usage}';
}
}
return '{memory_usage}';是什么意思
mckee1990 发表于 2013-9-5 12:10 static/image/common/back.gif
return '{memory_usage}';是什么意思
意思就是返回这个字符串啊,这个字符串会被解析成实际的内存使用数
Hex 发表于 2013-9-5 15:06 static/image/common/back.gif
意思就是返回这个字符串啊,这个字符串会被解析成实际的内存使用数
在哪里去解析的啊
mckee1990 发表于 2013-9-5 15:16 static/image/common/back.gif
在哪里去解析的啊
在 Output.php 里解析的。
看 324 行的 _display 方法。
Hex 发表于 2013-9-5 15:19 static/image/common/back.gif
在 Output.php 里解析的。
看 324 行的 _display 方法。
哦看到了 memory_get_usage还没看到那个地方多谢
页:
[1]