Здравствуйте, qaz77, Вы писали:
Q>Идея со Sleep(20) — так себе. Q>Поток не пробуждается сразу же по приходу хотя бы одного пакета. Q>Представьте, что пакет приходит в первую мс слипа, а мы все равно спим еще 19 мс. Q>Лучше для ожидания поступления данных использовать select.
такая актуальность и не требуется, обработка всех собранных за "такт" пакетов происходит пачкой, поток не прыгает в сон и не пробуждается без надобности
в случае обработки по приходу поток бы постоянно дергался (пакеты идут 20 К в секунду) полюсов не видно.
Q>Вторая проблема, если за время слипа придет слишком много пакетов, то возможна их потеря. Q>Т.к. у сокета внутренний буфер конечного размера.
конечно, но с существенным запасом,
при потоке 20К в секунду за 20 мс придет 400 пакетов, а буфер у меня на ~4000