1
我有一个服务器套接字和3-4个Android设备作为客户端。我正在使用TCP/IP进行通信。哪个是最好的方法。我应该为每个客户使用多个端口吗?或者我应该使用相同的端口。如果使用相同的功能,那么我应该如何识别发往不同设备的通信?通过套接字与多个客户端进行通信
我有一个服务器套接字和3-4个Android设备作为客户端。我正在使用TCP/IP进行通信。哪个是最好的方法。我应该为每个客户使用多个端口吗?或者我应该使用相同的端口。如果使用相同的功能,那么我应该如何识别发往不同设备的通信?通过套接字与多个客户端进行通信
您可以使用一个端口。客户可以向您发送其ID。如果它不能,你可以看看客户的IP地址来锻炼它是哪一个。
有成千上万的网络上TCP客户机/服务器的代码示例,但我会用其自带的JDK示例代码开始,
不,你不需要几个端口。
ServerSocket server = new ServerSocket(port);
while (true)
{
Socket socket = server.accept();
// do something with this socket - aka 1 client
new SomeClientClass(socket);
InputStream in = socket.getInputStream();
in.read(byte[]);
OutputStream out = socket.getOutputStream;
// out will only write response to its own client.
// when this new SomeClientClassis created, method returns to this point
// in while loop and waits for the next client
}
将有多个TCP/IP连接同时.... –
好,我有一个服务监听32个客户端“同时”连接的结构。这部分没有任何问题。我们眼中的“模拟”与CPU中的不一样 – Romczyk