我正在用 python 编写一个简单的网络服务器。下面是我的代码的简化版本:
class StreamerHandler(SimpleHTTPRequestHandler):
def do_POST(self):
try:
length = int(self.headers.getheader('content-length'))
data = self.rfile.read(length)
self.send_response(200, "OK")
#process_data(data, self.client_address)
except Exception as inst:
logging.error(type(self).__name__ + "/" + type(inst).__name__ + " (" + inst.__str__() + ")")
class Streamer(TCPServer):
def __init__(self, overlay):
self.allow_reuse_address = True
TCPServer.__init__(self, ("", port), StreamerHandler)
我想做的是发送响应关闭 TCP 连接,然后运行 process_data 方法,这可能需要很长时间才能完成。
有办法实现这一点吗?我能想到的唯一解决方案是使用专用线程来进行处理。
我尝试了一下,实际上你需要两个命令(按顺序)来关闭它:self.finish()
self.connection.close()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)