【发布时间】:2017-11-19 20:36:31
【问题描述】:
放轻松,我是套接字编程的新手。
我正在制作一个类似于 Teamviewer 的程序。我可以制作一个简单的多线程服务器/客户端应用程序。但问题是我无法弄清楚如何做这样的事情: 假设我有服务器和一个连接到服务器的客户端。 我可以将文件从客户端传输到服务器。我可以与客户进行简单的聊天。但我的问题是:如何在文件同时传输时与客户聊天?我的意思是我一次不能做一个以上的功能。因为我们只有一个输入和一个输出用于服务器和客户端。那么我如何向客户端发送更多的一个功能,客户端如何一次读取更多的一个功能并响应请求? 我做了类似的事情:我向客户端发送了一个请求,我在一个包含新 DataInputStream 的新线程中得到了响应,但我无法弄清楚主 DataInputStream 将如何从客户端接收新响应,因为正在接收请求这种方式就是新的DataInputStream。我真的迷失在这种情况下,因为我觉得我的概念完全错误,但我无法找出正确的概念来做这样的事情。 是否可以使用 ServerSocket 或者我应该看一下 NIO Socket 吗?
注意: 我不想要一段代码,我想了解整个操作的概念。谢谢
【问题讨论】: