我有下面的代码片段:
ServerSocket serversocket=new ServerSocket(DEFAULTPORT);
serversocket.setSoTimeout(1000);
Socket socket=serversocket.accept();serversocket对象是否也会影响socket对象的状态?如果关闭serversocket对象,还可以为流使用socket对象吗?G 210
发布于 2011-02-23 14:26:01
简短的答案如下:
1) no
2)是
较长的答案是:
ServerSocket等待客户端连接(他在接受方法中等待)。当有客户端时,accept-方法返回,更具体地说,它返回一个套接字对象,然后表示服务器-客户机连接的服务器端点。如果服务器关闭了他的服务器套接字,他就不再监听(他不再接受新的客户端),但是他已经拥有套接字连接的客户端不受影响。
您的代码本身并没有“错误”,但是只有在1000毫秒内连接,它才能接受单个客户端。
下面是包括示例代码的介绍:
http://download.oracle.com/javase/tutorial/networking/sockets/clientServer.html
https://stackoverflow.com/questions/5091664
复制相似问题