用于非终止python程序的cProfile

2024-05-15 02:03:00 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个不终止的python程序,我用它进行调试

import faulthandler
faulthandler.dump_traceback_later(480,exit=True)
call_very_complicated_python_code()

我想对其进行分析,以便更好地了解哪些零件卡住:

$ python -m cProfile -o program.prof my_program.py my_input.txt
  • faulhandler机制是否会干扰分析
  • program.prof不是总是生成的
  • 有办法解决这个问题吗

Tags: import程序truemyexitcodecallprogram
1条回答
网友
1楼 · 发布于 2024-05-15 02:03:00

我没有使用过faulthandler,但无论如何,听起来这是一个错误的工具。如果代码从未结束或出现错误,那么回溯从何而来

评测用于测量代码的速度。如果您想理解代码,我建议您使用类似pdb的东西进行调试

import pdb添加到模块顶部

在要停止并检查的区域中添加:pdb.set_trace()

也许你有一些从未竞争过的递归或循环

相关问题 更多 >

    热门问题