Сведения о вопросе

Martincow

00:08, 21st August, 2020

Стоит ли делить на потоки реализацию TCP клиента?

Просмотров: 359   Ответов: 2

Раньше работал C++ & Qt, там дело обстояло иначе, возможно даже проще.



Сейчас есть задача написать TcpClient для андроида, то есть на Джаве. Так вот, естественно нужно обрабатывать запросы с сервера, и самому уметь принимать. Пока что я остановился на идее, это разделить работу клиента на два потока, один к примеру принимает запросы от сервера и обрабатывает их. Второй поток, собственно сам гуй и отправка запросов.



Что скажете? Можно ли избрать лучший путь? Хочется послушать людей работавших в этой области, возможно кто то может посоветовать хорошую ссылку на пример с кодом, к сожалению я пока не нашел в интернете src который бы мне помог.



  Сведения об ответе

prince

23:22, 24th August, 2020

Вы все правильно делаете. GUI в подавляющем большинстве случаев выносится в один поток. Кроме этого используется еще произвольное количество потоков для бэкграунд тасков, приема пакетов (в т.ч. tcp), отправки запросов и т.д.

Навскидку — после получения каждого пакета дергаются листенеры, которые и обновляют UI.
Будет время — поищу что-нибудь конкретное.


  Сведения об ответе

COOL

21:06, 1st October, 2020

А там нельзя использовать select?
А интерфейс перекинуть на второй тред, в итоге интерфейс не будет тормозить от работы тцпклиента


Ответить на вопрос

Чтобы ответить на вопрос вам нужно войти в систему или зарегистрироваться