我对 java 编程很陌生,并尝试做一个简单的程序,我有一个服务器和 2 个其他用户,可以通过发送简单消息(字符串)进行通信。一切正常,但是当我使用 readObject 方法时出现问题。基本上,如果第二个用户在第一个用户之前写了一条消息,那么在第一个用户发送消息之前,该消息不会出现在服务器屏幕上。似乎 readObject 方法将冻结程序,直到它实际接收到该用户的对象,然后将继续:
while (true) {
message = (String) input[0].readObject();
showMessage(message);
message = (String) input[1].readObject();
showMessage(message);
}
我的问题是:如果第二个用户是第一个发送对象,有没有办法让第二个用户在第一个发送对象之前发送一个对象?我必须为每个用户创建一个单独的线程吗?谢谢!