Android: Автобан — Отмена запросов / отправка сообщений на websocket

#android #multithreading #websocket #autobahn

#Android #многопоточность #веб-сокет #autobahn

Вопрос:

Сценарий : 1. У меня есть представление списка, извлекающий данные на лету. Из-за прокрутки те данные, которые он мог бы получить, могут оказаться устаревшими.
2. Когда я реализовал HTTP-клиент с использованием потока, при прокрутке я бы отменил все запросы threadHandler.removeMessages(intwhat), чтобы не возвращались устаревшие данные.
3. Autobahn Websocket API дает мне возможность отправлять сообщение и получать его ответ асинхронно.
4. Может ли кто-нибудь посоветовать мне, как отменить запросы от WebsocketWriter? или обходной маневр.
5. Если приведенного выше описания недостаточно, я могу подробнее рассказать.

Ответ №1:

Вопрос OPS был перенесен в список рассылки Autobahn здесь.

Извлечь:

sendMessage() не может быть отменен. После вызова он перенаправит сообщение в поток фоновой записи, и этот поток отправит байты по проводам.

Что вы можете сделать (на уровне приложения), так это игнорировать любые ответы на отправленное сообщение, которое ожидает приложение.