ethernet UDP в пакетах по 1500 байт . На c# реально его принять и записать хотя бы в массив? Что можно почитать про это?
з.ы.
попробовал на уровне пришел пакет - копирую его в массив , теряется половина и больше пакетов.
В массив? Его же пересоздавать надо, он иммутабельный. Приняли 1,5КБ, скопировали кусок памяти в десяток мегабайт из предыдущих пакетиков. List используйте, а ещё лучше своё хранилище с собственным буфером. .NET генерит вполне приличный бинарный код, и уж точно в состоянии обработать ваши данные, если, конечно, вы будете представлять, что в точности происходит за кулисами.
А что под своим хранилищем имеется ввиду , какая сущность? list же это просто всязный список или нет?
Вам нужно минимизировать количество выполняемых действий при приеме каждого пакета. Дальше зависит от задачи. List всё же иногда расширять надо, но можно изначально задать большой размер. А может вам надо, чтобы вся принятая информация в одном непрерывном блоке лежала, тогда List тут вообще никак. Как и массив. Потому от задачи пляшите, четко представляя, как именно в памяти хранятся ваши данные.
Мне надо принять без потерь хотябы 50 мбайт. Просто принять. Я их потом разгребу , внутри пакетов есть индексы.
Данные одинакового размера все?
Да , все одинаковые.
В личку пожалуй стоит уйти.
Обсуждают сегодня