我使用阻塞IO套接字。我的客户端发送消息,然后等待服务器的响应。我现在想在客户端引入读取超时但我很困惑在服务器端做什么。这是一些伪代码:
Client:
while(true) {
sendRequest();
readResponse();
}
Server:
while(true) {
readRequest();
handleRequest();
sendResponse();
}
假设客户端发送请求并捕获超时异常。但是,服务器仍在处理请求并希望发送响应。在此之前,客户已经发送了第二个请求。
恐怕事情会以这种方式失灵。在这种情况下,服务器通常应该做什么?我可以在服务器端捕获客户端超时然后决定不发送响应吗?
问候, 扬