我有一个很简单的问题,想用Python解决。
我希望具有以下行为的Web服务器:如果它收到对/work
的POST请求,则应将其添加到工作队列并在附加的数据上执行某些功能。如果收到/cancel
的POST请求,则应取消其当前任务。
不幸的是,我似乎能够获得BaseHTTPRequestHandler
来处理多个请求的唯一方法是使用ThreadingMixIn
,但这似乎不必要地复杂,因为我随后必须使用一组锁来防止并发执行多个工作任务。
我尝试使用不带BaseHTTPRequestHandler
的{{1}}并只是剥离ThreadingMixIn
中的线程,但这没有用,因为显然do_POST
在连接{ BaseHTTPRequestHandler
函数返回。
理想情况下,我正在寻找一个接口,该接口使我能够按自己的意愿关闭与客户端的连接,因此我可以在辅助线程中进行操作,并自己管理队列,而不必在do_POST
在这方面的行为。