我的问题很简单.我只想再次使用客户端对象套接字.
通常,只要客户端尝试连接服务器,人们就会创建一个新的套接字:
Socket test = new Socket (host, port);
OutputStream out = test.getOutputStream ();
InputStream in = test.getInputStream ();
out.writeObject (object)
out.flush ();
in.readObject();
Run Code Online (Sandbox Code Playgroud)
在第一个writeObject之后,我想再次通过重用out.writeObject(nextObject)向服务器发送更多信息,但是不再访问服务器.为了使它工作,我必须完成上述所有步骤.为什么?
这是我用来测试我的意思的代码."Second Request not not ..."之后的代码无法到达服务器.但是,如果我删除那些评论之上的评论,它将会通过.为什么我不能重新使用相同的客户端套接字对象而不必使用新的Socket().
Class Hello -> Data passed between the server and the client
Class TestClient -> Client
Class TestServer -> Server
package tests;
import java.io.Serializable;
public class Hello implements Serializable {
String hola = "hello my friend";
public String getHello () {
return hola;
}
public void setHello (String str) {
hola …Run Code Online (Sandbox Code Playgroud)