我有下面的代码:
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中的解释来做到这一点。但这似乎并没有杀死服务器。我在做什么错?
好吧,我得到了我问题的答案。我在设置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()