У меня есть приложения с 2 потоками. Первый поток (основной поток) и второй поток (tcp-client-thread). main-thread
генерирует некоторые сообщения и помещает их в очередь для tcp-client-thread
. tcp-client-thread
должен отправить эти сообщения на сервер. Но, tcp-client-thread
также должен получать сообщения от сервера.Отправка и получение данных с помощью tcp socket в одном потоке
Как я могу это сделать? recv
останавливает текущую резьбу. Установите тайм-аут для recv
? Затем после recv
очередь проверки тайм-аута (от main-thread
), а если есть сообщения, отправьте их, то никаких сообщений не начнется recv
еще раз?