我目前正在尝试调试python烧瓶程序的内存使用情况,并且我可以通过添加以下内容在PDB中运行该程序:
import pdb
pdb.set_trace()
在我的服务器的入口点。然后我告诉PDB继续并运行该程序。
我已经读过,通过执行Ctrl-C,我可以暂停在PDB中运行的程序,但看起来Flask正在捕获KeyboardInterrupt
异常:
^CKeyboardInterrupt
Traceback (most recent call last):
File "./server.py", line 4, in <module>
from mauie.defaults import *
File "/lib/python2.7/site-packages/flask_socketio/__init__.py", line 414, in run
File "/lib/python2.7/site-packages/gevent/baseserver.py", line 284, in serve_forever
File "/lib/python2.7/site-packages/gevent/event.py", line 77, in wait
File "/lib/python2.7/site-packages/gevent/hub.py", line 338, in switch
KeyboardInterrupt
但PDB提示永远不会出现。
答案 0 :(得分:0)
set_trace()只是一个Python函数,因此您可以在代码中的任何位置调用它。您是否考虑过在代码中添加额外的断点并以这种方式查看内存?