You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Psutil统计进程内存时差值输出异常问题排查

问题分析与解答

你的代码中,日志格式化字符串的占位符数量和传递的参数数量不匹配,导致实际输出的内容并非你预期的差值。

问题根源

你使用的格式化字符串是:

"{}:consumed memory (before, after, diff): {:,}"

其中包含2个占位符:

  1. 第一个{}用于填充函数名func.__name__
  2. 第二个{:,}仅能匹配1个数值参数

但你向format()传递了4个参数:func.__name__, mem_before, mem_after, mem_after - mem_before。Python的str.format()会按顺序匹配参数,第二个占位符只会取第一个数值参数mem_before(也就是函数执行前的内存占用值),剩下的mem_after和差值参数会被直接忽略。

这就是为什么你看到的输出数值并非预期的差值,而是函数执行前的内存占用数据。

修复方案

修改格式化字符串,添加对应三个数值的占位符,确保每个参数都能被正确输出:

logging.info("{}:consumed memory (before, after, diff): {:,}, {:,}, {:,}".format(
    func.__name__,
    mem_before, mem_after, mem_after - mem_before))

内容的提问来源于stack exchange,提问作者Alejandro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 21:43:16