举个例子,如果我尝试在服务器程序上构建一种文件传输机制,通过利用用户现有的连接套接字将一个文件字节从发送者 A 传输到用户 B,那么如何避免它与所有正在进行的聊天交错流传入,即除了在服务器端创建额外的服务器套接字之外,还要在这两个线程之间保持明确的等待和通知......
非常感谢 凯夫
最佳答案
为您的应用程序创建一个消息协议(protocol),以区分各种消息类型。然后创建一条“文件 block ”消息和一条“聊天”消息以及您需要的任何其他消息。
伪代码:
// 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
}
关于java - 如何暂停其他正在进行的流读取器线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13592453/