Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/19.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何中断Django管理命令_Python_Django_Signals_Interrupt Handling - Fatal编程技术网

Python 如何中断Django管理命令

Python 如何中断Django管理命令,python,django,signals,interrupt-handling,Python,Django,Signals,Interrupt Handling,如文档所示,我重写了BaseCommand以创建自己的管理命令。虽然这是一个长期运行的过程,但我希望能够在发送ctrl+c时中断它并让它优雅地关闭 我尝试了通常的signal.signal(signal.SIGINT,signal\u处理程序),但是signal\u处理程序从未被调用。Django似乎有自己的,但我为三个Django.core.signals做了响应:get_request_exception,request_finished,“请求”启动了,但没有一个被调用。可能与?Djang

如文档所示,我重写了BaseCommand以创建自己的管理命令。虽然这是一个长期运行的过程,但我希望能够在发送ctrl+c时中断它并让它优雅地关闭


我尝试了通常的signal.signal(signal.SIGINT,signal\u处理程序),但是signal\u处理程序从未被调用。Django似乎有自己的,但我为三个Django.core.signals做了响应:get_request_exception,request_finished,“请求”启动了,但没有一个被调用。

可能与?Django信号与操作系统信号无关。@meshy通常会捕捉由ctrl+c发出的信号。@DanielRoseman谢谢,我也这么认为。考虑到要熟悉Django平台必须熟悉的术语数量,您认为他们会为共享相同名称空间的完全不同的系统想出自己的术语。:)老问题,但实际上标准的python信号处理在管理命令中确实有效。刚刚检查了python 3.5.1和django 1.11.2。