我正在做一些客户端服务器套接字编程。我用<<msgBegin>>
和<<msgEnd>>
来分隔消息。但是我想拥有另一种机制来检测格式错误的消息的末尾根本没有<<msgEnd>>
。
在进行socket.recv()
时,如何知道数据输入是否结束?没有数据时,socket
被阻止。所以我做了socket.setblocking(False)
并重新运行,所以现在它立即给出了BlockingIOError()
。我应该在try-except
块中捕捉到什么信号,以告知自己套接字上的数据输入已结束吗?还是他们有其他标准方法可以做到这一点?