启动Python Web服务器并将控制权返回给app

时间:2015-08-05 02:29:26

标签: python flask bottle

我可以启动像Flask或Bottle这样的Web服务器(可能在新线程中吗?)然后将控制权返回给应用程序?这两个框架的默认示例都会在我启动服务器时窃取控制权并且不会返回。

1 个答案:

答案 0 :(得分:2)

您可以从新主题开始。您应该设置守护程序标志,以便Ctrl + C可以结束脚本。

class ServerThread(threading.Thread):

  def __init__(self):
    threading.Thread.__init__(self)

  def run(self):
    app.run(
      port=7777,
      host='localhost'
    )

if '__main__'==__name__:
  logging.getLogger().addHandler(logging.StreamHandler())

  thread = ServerThread()
  thread.daemon = True
  thread.start()