statprof是Python的统计分析工具。文档说它只能用于配置主线程。因此,如果您使用它来分析在使用./manage.py runserver
时在处理请求期间调用的某个函数,它会引发ValueError:signal仅在主线程中有效。
我看到两种可能的方法来解决这个问题(除了从控制台调用函数,这是可能的,但不方便):
1)黑客攻击statprof,以便它不使用信号 - 但不明显该怎么做,或者根本不可能。
2)使runserver命令运行主线程中的所有内容。
也许有其他解决方案?有人在django视图中使用过statprof吗?
答案 0 :(得分:0)
如果在使用statprof时执行./manage.py runserver --noreload
,它将在单个线程中运行开发服务器并解决此问题。