#android #multithreading #websocket #autobahn
#Android #многопоточность #веб-сокет #autobahn
Вопрос:
Сценарий : 1. У меня есть представление списка, извлекающий данные на лету. Из-за прокрутки те данные, которые он мог бы получить, могут оказаться устаревшими.
2. Когда я реализовал HTTP-клиент с использованием потока, при прокрутке я бы отменил все запросы threadHandler.removeMessages(intwhat), чтобы не возвращались устаревшие данные.
3. Autobahn Websocket API дает мне возможность отправлять сообщение и получать его ответ асинхронно.
4. Может ли кто-нибудь посоветовать мне, как отменить запросы от WebsocketWriter? или обходной маневр.
5. Если приведенного выше описания недостаточно, я могу подробнее рассказать.
Ответ №1:
Вопрос OPS был перенесен в список рассылки Autobahn здесь.
Извлечь:
sendMessage()
не может быть отменен. После вызова он перенаправит сообщение в поток фоновой записи, и этот поток отправит байты по проводам.Что вы можете сделать (на уровне приложения), так это игнорировать любые ответы на отправленное сообщение, которое ожидает приложение.