gue*_*tli 7 python profiling usage-statistics
我想知道Python解释器在我的生产环境中正在进行.
前段时间我写了一个名为live-trace的简单工具,它运行一个守护程序线程,每隔N毫秒收集一次堆栈跟踪.
但是解释器本身的信号处理有一个缺点:
虽然就Python用户而言,Python信号处理程序是异步调用的,但它们只能出现在Python解释器的"原子"指令之间.这意味着在纯C中实现的长计算期间到达的信号(例如大文本上的正则表达式匹配)可能会延迟一段任意时间.
资料来源:https://docs.python.org/2/library/signal.html
我怎么能解决上面的约束并得到一个堆栈跟踪,即使解释器在某些C代码中持续几秒钟?
我现在将py-spy与speedscope一起使用。这是一个非常酷的组合。
py-spy 适用于 Windows/Linux/macOS,可以自己输出火焰图并主动部署,例如。2019 年 10 月添加了子流程分析支持。
| 归档时间: |
|
| 查看次数: |
266 次 |
| 最近记录: |