我习惯于对基于C的应用程序进行采样,每隔几毫秒就可以看到当时正在调用的函数堆栈。
这让我可以看到大部分时间花在应用程序上的位置,以便我可以对其进行优化。
然而,当使用python时,示例不是那么有用,因为它正在对python解释器的C函数进行采样,而不是python代码本身。
是否有一个有用的python采样工具?
答案 0 :(得分:4)
Python包含一组内置的profiling tools。特别是,您可以从命令行运行任意python脚本的cProfile:
$ python -m cProfile myscript.py
通过直接调用API可以获得更多详细的用法。请注意,cProfile模块是在Python 2.5中添加的。在早期版本中,您可以使用纯Python但速度较慢的“配置文件”模块。