【发布时间】:2014-11-21 19:31:53
【问题描述】:
我正在使用Socket 制作一个简单的网络。
它工作正常,但问题是它像棋盘游戏一样工作
每次服务器必须等待客户端,客户端就会等待服务器,以此类推。
每当我从任何一方输入数据时,我都希望数据从服务器发送到客户端以及从客户端发送到服务器。
这是我在服务器中的一部分代码
in = Integer.parseInt(myInputStream.readLine())); // server gets data
out = new Scanner(System.in).nextInt();
myOutputStream.println(column); // server sends data
【问题讨论】:
-
如果我理解正确的话,服务器也应该是客户端,客户端也应该是服务器?所以基本上你需要建立2个连接。一个从 A 到 B,一个从 B 到 A。
-
您好,不知怎的,我无法理解您要说的内容。请提供更多代码或再次深入解释。打开 Socket 时,调用(
accept或receive)将阻塞并等待传入连接(如果是 ServerSocket)或传入数据报(如果是 DatagramSocket)。所以在那种情况下,“等待”对我来说是可以的。 (download.oracle.com/javase/tutorial/networking/sockets/…) -
@THelper 有可能吗?理论上至少?
-
@nyyrikki 只是我不想让任何一方等待对方的数据......
标签: java sockets networking