我在Linux下使用C++编写套接字。我有个问题。我如何才能确定客户是否关闭了连接。如何确定是否连接到套接字已关闭
尤其是在服务器接受的客户端,并开始等待来自客户端的一些数据的情况。但客户端不发送任何内容,只关闭与服务器的连接。在这种情况下,我的服务器正在等待一些数据。
这里是我的例子程序:
newsockfd = accept(sockfd,
(struct sockaddr *) &cli_addr,
&clilen);
if (newsockfd < 0)
error("ERROR on accept");
bzero(buffer,256);
n = read(newsockfd,buffer,255);
我也有我的服务器上的几个插座。我需要知道哪个客户端关闭了连接。
我不明白“客户端关闭连接到哪个套接字”?你需要“newsockfd”的价值吗? – badawi