Вот моя проблема: клиент подключается к серверу через tcp-сокет, сервер принимает это соединение, затем клиент отправляет некоторые данные на сервер в произвольные периоды времени, как сервер должен знать, когда читать данные с клиента. Другими словами, есть ли какой-нибудь слушатель при получении данных?
В общем случае сервер должен всегда ожидать данных по каждому соединению — т.е. при обработке запроса от клиента сервер должен немедленно запустить другой запрос async_read для этого соединения, чтобы дождаться следующего запроса (и как только сервер получит полный запрос) , этот запрос обрабатывается и так далее).
Других решений пока нет …