Проблемы при передаче объекта List <> через сокет - PullRequest
1 голос
/ 18 февраля 2012

Я не знаю, почему, но внезапно я столкнулся с проблемами при отправке и получении списка через TCP-сокет, изначально я преуспел в этом. Вот мой код перевода: Отправитель:

List<String> A = ....;
ObjectOutputStream out = new ObjectOutputStream(soc.getOutputStream());
System.out.println("Wrinting the answers");
out.writeObject(A);
System.out.println("Wrote the answers, now reading the flag");

Я получаю СОП правильно, однако приемник переходит в состояние ожидания:

ObjectInputStream in = new ObjectInputStream(soc.getInputStream());             
ls = (List<String>)in.readObject();
System.out.println("Recieved the list of results");

Здесь я не получаю SOP, и получатель продолжает находиться в состоянии ожидания. Добавлю: я успешно перенес Список, но потом внес некоторые изменения тут и там, и теперь не знаю, в чем проблема. На самом деле я тоже собираюсь передать еще один List <>, но попробую это сделать только тогда, когда получу решение первой проблемы! Спасибо за ваш ответ ..

1 Ответ

2 голосов
/ 18 февраля 2012

Попробуйте это:

ObjectOutputStream out = new ObjectOutputStream(soc.getOutputStream());
System.out.println("Wrinting the answers");
out.writeObject(A);
out.flush();  // flush the stream!
System.out.println("Wrote the answers, now reading the flag");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...