cProfile 配置文件在线程内调用吗?

Posted

技术标签:

【中文标题】cProfile 配置文件在线程内调用吗?【英文标题】:does cProfile profile calls inside threads? 【发布时间】:2010-03-26 10:23:33 【问题描述】:

我在一段代码上运行了 cprofile,其中包括几个线程来完成大部分工作。 当我查看分析的输出时,我没有看到线程内调用的所有函数的日志记录。我确信他们被称为,因为他们做的事情很容易看到,比如写入数据库等。

cProfile 不分析线程吗?我错过了什么吗?

【问题讨论】:

【参考方案1】:

在这里找到答案:link

值得指出的是,使用探查器仅(默认情况下)在主线程上有效,如果您使用它们,您将不会从其他线程获得任何信息。这可能有点棘手,因为探查器文档中完全没有提到它。 如果您还想分析线程,则需要查看文档中的 threading.setprofile() 函数。

【讨论】:

以上是关于cProfile 配置文件在线程内调用吗?的主要内容,如果未能解决你的问题,请参考以下文章

cProfile ,如何将数据记录到文件中

如何从脚本输出 .cprofile 文件

cProfile 没有属性 runctx

将 cprofile 与输入文件一起使用

嵌套函数内的 cProfile

cProfile - 将数据保存在 Python 对象中/延迟写入磁盘