如何从内部关闭cherrypy?

0 投票
1 回答
3957 浏览
提问于 2025-04-15 14:40

我正在使用cherrypy进行开发,我是通过一个Python脚本来启动它的。

为了更好地进行开发,我想知道从主程序内部(而不是通过外部的ctrl-c或SIGTERM)停止cherrypy的正确方法是什么。

我想我需要从主应用程序注册一个回调函数,这样才能从工作线程中停止cherrypy的主进程。

但是,我该如何在内部停止主进程呢?

1 个回答

5
import sys
class MyCherryPyApplication(object):

  def default(self):
    sys.exit()
  default.exposed = True

cherrypy.quickstart(MyCherryPyApplication())

在任何请求处理程序里放一个 sys.exit() 会让整个服务器停止运行。

我本以为这只会结束当前的线程,但实际上它会让整个服务器都停止。这正是我想要的效果。

撰写回答