0

例如,如果我尝试在服务器程序上构建一个文件传输机制,通过利用他们自己现有的连接套接字将一个文件字节从发送者 A 发送到用户 B,那么如何避免它与所有正在进行的聊天流交错进入,即在这两个线程之间保持明确的等待和通知,除了在服务器端创建一个额外的服务器套接字......</p>

非常感谢凯夫

4

1 回答 1

3

为您的应用程序创建一个消息协议,以区分各种消息类型。然后创建一个“文件块”消息和一个“聊天”消息以及您需要的任何其他消息。

伪代码:

// sending method
public synchronized void send(Message msg) {
  // write message to socket ...
}

// receiving method
while(true) {
  Message msg = readMessage(); // read message from socket
  handleMessage(msg); // may want to push this work to another thread
}
于 2012-11-27T20:37:29.020 回答