0

我正在开发一个非常基本的“图像流”服务器作为学校科目,我已经完成了大部分工作,但我仍然坚持数据和控制相关套接字之间的分离:

我的结构是: TCPServer(我的服务器,用作控制套接字)包含一个 dataSocket(仅用于发送图像并在我的 TCPServer 对象中初始化,当我收到某个查询时)

当我通过我的 dataSocket 发送数据(图像)时,我仍然需要查看客户端是否发送了 PAUSE 或 STOP 请求,但是如果我使用 python 的self.request.recv(1024)服务器等待响应而不是继续发送数据(这很合乎逻辑) .

我应该怎么做才能防止这种行为?我是否应该recv(1024)在单独的线程上启动并在每个循环中运行它(并检查我是否在两次迭代之间获得任何相关数据)?

4

1 回答 1

1

Twisted应该可以解决问题!它在 Python 中处理异步套接字

于 2012-11-30T17:40:35.197 回答