У меня есть следующий код:
public void post(String message) {
final String mess = message;
(new Thread() {
public void run() {
while (true) {
try {
if (status.equals("serviceResolved")) {
output.println(mess);
Game.log.fine("The following message was successfully sent: " + mess);
break;
} else {
try {Thread.sleep(1000);} catch (InterruptedException ie) {}
}
} catch (NullPointerException e) {
try {Thread.sleep(1000);} catch (InterruptedException ie) {}
}
}
}
}).start();
}
В моем лог-файле я нахожу много таких строк:
The following message was successfully sent: blablabla
The following message was successfully sent: blablabla
The following message was successfully sent: blablabla
The following message was successfully sent: blablabla
И моя программа не отвечает.
Мне кажется, что команда break
не работает. Что может быть возможной причиной для этого.
Интересно то, что это происходит не всегда. Иногда моя программа работает нормально, иногда возникает описанная выше проблема.