LINUX.ORG.RU

История изменений

Исправление dvetutnev, (текущая версия) :

Почитай как надо, тебе тут явно понимания асинхронного IO не хватает. Сначала запускаешь первую асинхронную операцию (accept или connect), этот метод завершается без блокировки, потом запускаешь event-loop (в данном случаи это io_context::run). Когда завершится первая асинхронная операция, в ее обработчике запускается следующая (чтение/запись). И так до тех пор пока не нужно будет остановить соединение. Пока запущена хотя бы одна асинхронная операция, метод io_context::run будет продолжать.

Исходная версия dvetutnev, :

Почитай как надо, тебе тут явно понимания асинхронного IO не хватает. Сначала запускаешь первую асинхронную операцию (accept или connect), этот метод завершается без блокировки, потом запускаешь event-loop (в данном случаи это io_context::run). Когда завершится первая асинхронная операция в ее обработчике запускается следующая (чтение/запись). И так до тех пор пока не нужно будет остановить соединение. Пока запущена хотя бы одна асинхронная операция метод io_context::run будет продолжать.