Я реализую FTP-программу с использованием UDP в Java (TCP не вариант), но у меня проблемы с пониманием того, как она должна работать.Основные принципы UDP-сервера с несколькими клиентами
Как я понимаю, это бесконтактный, поэтому я должен просто запустить один поток сервера, который обрабатывает каждый запрос любым клиентом.
Где я запутался во время фактической передачи файлов. Если сервер находится в середине цикла, отправляющего датаграммы с битами запрошенного файла клиенту и ожидающий ACK от клиента, но вместо этого получает совершенно другой запрос от другого клиента, как я предполагаю справиться с этим?
Я знаю, что я мог бы выпрыгнуть из цикла, чтобы обработать его, но если, наконец, придет первоначальный ожидаемый пакет, как я могу взять туда, где я остановился?