0
我有一个游戏的服务器/客户端模型,但它始终卡在ObjectInputStream
初始化。Java Socket停留在新ObjectInputStream()
这里是代码为客户端的启动方法:
public void start(){
try {
Socket s = new Socket("127.0.0.1", 24680);
Thread.sleep(1000);
ois = new ObjectInputStream(s.getInputStream()); // stuck here
oos = new ObjectOutputStream(s.getOutputStream());
startGame();
} catch (Exception e) {
e.printStackTrace();
}
}
}
这里是服务器代码:提前
try {
InputStream fis = socket.getInputStream();
ObjectInputStream ois = new ObjectInputStream(fis);
while (true) {
ArrayList <Dot> lists = (ArrayList <Dot>) ois.readObject();
for (Socket s: sockets) {
ObjectOutputStream oos = new ObjectOutputStream(s.getOutputStream());
oos.writeObject(lists);
}
}
} catch (Exception e) {
e.printStackTrace();
}
谢谢!
netstat显示连接吗?创建服务器套接字的服务器代码在哪里?这里没有足够的信息来帮助。 –
它可能是网络连接问题吗?先尝试用telnet连接到你的服务器。 – ilj
你有三个在这。其中只有一个是正确的。你在'new ObjectInputStream()',而不是'getInputStream()'或'new ObjectOutputStream()'被阻止。 – EJP