为了账号安全,请及时绑定邮箱和手机立即绑定

TCP多线程通信

怎样实现服务器把各客户机发来的信息读出来再分发给其它客户端?服务器的读出来的信息要进行如何处理才能发送给客户端,是的客户端正确读取?

正在回答

2 回答

//新建一个类。将类单例化。类中生命一个Vector<socket>  再添加

public class ChatManager {


private ChatManager(){}

private static final ChatManager cm = new ChatManager();

public static ChatManager getChatManager() {

return cm;

}

Vector<Socket> vector = new Vector<Socket>();

public void add(Socket s) {

vector.add(s);

}

public void remove(Socket cs) {

vector.remove(s);

}

public void publish(Socket s,String out) {

for (int i = 0; i < vector.size(); i++) {

Socket ChatSocket = vector.get(i);

if (!s.equals(ChatSocket)) {

    ChatSocket.getOutputStream().write((out+"\n").getBytes("UTF-8"));

}

}

}

}


0 回复 有任何疑惑可以回复我~
#1

慕粉2213397909 提问者

非常感谢!
2018-06-24 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

TCP多线程通信

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信