3

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

这让我可以看到大部分时间花在应用程序上的地方,以便我对其进行优化。

然而,在使用 python 时,sample 并没有太大帮助,因为它采样的是 python 解释器的 C 函数,而不是 python 代码本身。

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

4

1 回答 1

4

Python 包含一组内置的分析工具。特别是,您可以从命令行对任意 python 脚本运行 cProfile:

$ python -m cProfile myscript.py

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

于 2009-01-22T03:11:30.323 回答