@engune
Разработчик сайтов и мобильных приложений

Где найти пример UDP сервера на асинхронных сокетах?

Не могу найти нормального примера асинхронного сервера UDP на С++ (или просто C ). Есть только варианты TCP.

Libev \ LibEvent \ Libuv не предлагать, нужно сделать на *poll. Хочу потом перевести на поддержку ipv6 кода.

Есть где то примеры, как реализовать сервер такой или что почитать?

P.S. ранее делал асинхронный TCP на Libev
  • Вопрос задан
  • 1222 просмотра
Пригласить эксперта
Ответы на вопрос 2
AxianLTD
@AxianLTD
Книга "Сети TCP/IP разработка приложений" стр.135 "Алгоритм параллельного сервера без установления логического соединения".
Ответ написан
TrueBers
@TrueBers
Гуглю за еду
Так, а в чём принципиальная разница с TCP то? Там же ещё проще должно быть: не нужны никаких обработки коннектов, отваливаний, стриминга. Шлёшь себе втупую датаграммы, когда сокет свободен, и принимаешь — когда буфер не пустой, и не паришься.
И почему не нравятся библиотеки? В них же за вас уже все косяки и баги порешали. А их там, поверьте, хватает. Где-то poll тупит, где-то нет epoll, где-то файловый IO ещё вешается нормальный. В винде вообще IOCP вместо всего этого используется, и тот через жопу.
И, разве, в man epoll нет примера? В своё время мне хватило его, насколько я помню.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы