我是网络编程的新手。我有兴趣通过Java服务器和C客户端之间的套接字建立网络连接并保持连接无限打开的可能吗?我想保持连接打开状态以在客户端之间交换XML数据。
从理论上讲,可以无限期地打开服务器套接字;但是,使用客户端套接字是不可能的。主要原因是因为客户端套接字取决于处理数据的服务器端套接字,并且服务器套接字可能会关闭连接。
尽管可以无限期地保持连接打开,但实际情况通常会确保此类套接字不会永远保持打开状态。网络中断,中间路由器中的配置错误,带宽耗尽,计算能力不足等都共同确保了点对点连接最多只是暂时的。
请注意,服务器端套接字是接收连接请求的套接字(产生具有自己的返回套接字的连接),因此即使没有连接也可以将其打开。如果您将套接字视为与另一台计算机的开放连接,则需要重新调整思路,以使服务器套接字有意义。