【问题标题】:php memory_get_usage(true)php memory_get_usage(true)
【发布时间】:2012-05-09 17:47:45
【问题描述】:

我正在构建一个 php 服务器,并且我正在记录服务器正在执行的每个命令。 在我的日志中,我添加了一个列,使用 memory_get_usage(true) 函数在每个日志上显示此步骤中使用的内存。

由于某种原因,它总是向我显示 256(我已将函数划分为 / 1024 以在 KB 中获取它),尽管我正在连接到 sql 服务器、添加新的对象实例、运行循环等。

这是为什么呢?

这是我的日志代码:

     function serverLog($status, $message)
{       
    global $logFile, $currentTime;
    $log =  "\n" . date("d/m/Y", $currentTime) . "|" . date("H:i:s", $currentTime). "|" . $status . "|" . $message .  "|" . (memory_get_usage(true) / 1024);
    $fp = fopen($logFile, "a+") or die ("can't open file");
    fwrite($fp, utf8_encode($log));
    fclose($fp);
}

【问题讨论】:

    标签: php memory-management


    【解决方案1】:

    memory_get_usage(true) 显示 PHP 引擎分配的内存量,仅当您的脚本需要更多内存时才会更改。

    【讨论】:

      【解决方案2】:

      memory_get_usage(true) 将显示 php(引擎)分配的内存量,而不是脚本实际使用的内存量。您的脚本可能永远不需要超过 256,这就是您看到这个数字的原因。

      【讨论】:

      • 我不能得到实数吗?当我打开一个新的套接字连接时抛出我的脚本,它不需要更多内存吗?
      猜你喜欢
      • 2013-07-08
      • 2012-09-20
      • 2012-01-24
      • 1970-01-01
      • 1970-01-01
      • 2013-08-08
      • 1970-01-01
      • 2010-10-28
      • 1970-01-01
      相关资源
      最近更新 更多