저는 현재 파이썬 플라스크 프로그램의 디버그 메모리 사용에 노력하고있어, 나는 추가하여 PDB에서 프로그램을 실행할 수 있어요 : 내 서버의 진입 점에서PDB에서 Python Flask 서비스를 실행하는 동안 어떻게 일시 중지/중단합니까?
import pdb
pdb.set_trace()
. 그런 다음 PDB에 프로그램을 계속 실행하라고 지시합니다.
나는 Ctrl-C를 수행하여, 내가 PDB에서 실행되는 프로그램을 일시 정지 할 수 있습니다 읽었습니다,하지만 플라스크가 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의 프롬프트가 제공되지 않습니다.
왜 ctrl-c를 눌러도 PDB가 실행된다고 생각하는 이유를 모릅니다. 코드를 중단시키려는 중단 점을 만들어야합니다. –
http://intackoverflow.com/questions/10239760/interrupt-pause-running-python-program-in-pdb -이 질문은 가능한 언급이며 Flask 외부에서 작동합니다. 그 플라스크가 예외를 가로 채서 PDB가 결코 그것을 보지 못하게합니다. – Charlie