☕ Оффтоп-чат, курилка. ⚑ПРАВИЛА: bit.ly/andr-rules 📰NEWS: bit.ly/AnrdResId ◼ЧАТЫ: ⚫Основной: bit.ly/andr-main ⚫IDE, сборка, Git, сервисы: bit.ly/andr-tools ☕Оффтоп: bit.ly/andr-offtop ⚫Конференции, события: bit.ly/andr-events ⚫Вакансии, найм: bit.ly/andr-job ⚫Архитектура: bit.ly/andr-patterns ⚫Rx: bit.ly/andr-rx ⚫Тестирование: bit.ly/andr-test ⚫Kotlin: bit.ly/andr-kotlin ⚫Хаmarin: bit.ly/andr-xamarin
public void sendMessage(String message) {
// отправка на сообщения на сервер
if (ws == null) {
// если сокет не открыт -
// синхранизировать потоки
synchronized (ReceiverMessage.class) {
if (ws == null) {
// если и там он не открыт
// то открыть принудительно
onCreateSocket();
// ждать пока откроется за 10 попыток
int attempts = 10;
while (ws == null && !(attempts == 0)) {
SystemClock.sleep(100);
attempts--;
}
} else {
ws.sendText(message);
}
}
} else {
ws.sendText(message);
}
}