我有以下代码:
from wsgiref import simple_server
import falcon
app = falcon.API(middleware=Auth())
msg = Something()
app.add_route('/hello', msg)
httpd = simple_server.make_server(127.0.0.1, 8987, app)
m_process = Thread(target=httpd.serve_forever(poll_interval=0.5), name="m_process")
m_process.start()
s = Thread(target=httpd.shutdown(), name="s_process")
s.start()在Something()类的逻辑中,我根据某种逻辑递增或递减存储在数据库中的计数器。我想根据数据库上的条件调用s线程。因此,实际上,我正在尝试关闭服务器。我使用http://code.nabla.net/doc/wsgiref/api/wsgiref/simple_server/wsgiref.simple_server.WSGIServer.html中的解释来做到这一点。但它似乎不会杀死服务器。我做错了什么?
发布于 2019-10-20 14:16:36
OKay我得到了我问题的答案。我在设置m_process的target时犯了一个愚蠢的错误。下面的方法是有效的
from wsgiref import simple_server
import falcon
app = falcon.API(middleware=Auth())
msg = Something()
app.add_route('/hello', msg)
httpd = simple_server.make_server(127.0.0.1, 8987, app)
m_process = Thread(target=httpd.serve_forever, name="m_process")
m_process.start()
s = Thread(target=httpd.shutdown(), name="s_process")
s.start()https://stackoverflow.com/questions/58467468
复制相似问题