|
|
1
2
可能是因为你已经连接了一个调试程序——调试程序通过检测所有的东西来减慢代码的速度,并且反序列化你的数据存储是一项很重要的工作。 使用--use-sqlite标志将启用基于实验性sqlite的本地数据存储,这将减少启动时间。但是,请注意,当您切换到数据存储时,它将要求您擦除数据存储。 |
|
|
2
0
一个想法是在启动完成后使用WingDBStub启动调试。您需要将“import-wingdbstub”添加到某个代码中,但这可以在启动后调用任何地方。当然,模块必须在python路径上,必须将IDE配置为监听连接,并且您需要设置一些基本的安全性——这些都在中详细描述 http://wingware.com/doc/debug/importing-the-debugger 还有一个API,因此您可以提前开始调试,并在调试器开销过大的地方暂时关闭它。见 http://wingware.com/doc/debug/debugger-api 调试器开销是一件棘手的事情(至少对于cpython来说),因为它与执行的python字节代码的数量成比例。从Python代码看,在运行字节代码的解释器中有多少时间,在C/C++库或Python内部有多少时间是不明显的。类似于在大量数据上迭代的嵌套Python循环,如果它们执行的工作主要是在Python中完成的话,那么在调试器中会慢很多。在许多事情中,大部分工作实际上是在Python内部或库代码中完成的,因此调试器不会将事情拖慢太多。 |