2009-01-22 62 views
3

我习惯于对基于C的应用程序进行采样,每隔几毫秒就会看到当时正在调用哪个函数堆栈。对正在运行的Python应用程序进行采样

这让我看到大部分时间都花在应用程序上,所以我可以优化它。

但是,使用python时,示例并没有太大的帮助,因为它是对python解释器的C函数进行采样,而不是python代码本身。

python有没有一个有用的采样工具?

回答

4

Python包含一组内置的profiling tools。特别是,你可以在任意Python脚本在命令行中运行CPROFILE:

$ python -m cProfile myscript.py 

更巧妙的利用是可行通过直接调用API。请注意,cProfile模块是在Python 2.5中添加的。在早期版本中,您可以使用纯Python,但速度较慢的“配置文件”模块。

相关问题