Мой сервер использует UDP. Он отправляет 900 байт / 1 мс в мою программу автоматически после получения. Я использую сокет API в Windows (VB 6). Я сделал тест, и я знаю, что время обработки сообщения (около 0,3 мс) моей программы короче, чем время цикла (1 мс). Таким образом, причиной должен быть внутренний буфер сокета. Я пытаюсь вызвать функцию setsockopt, чтобы установить больший буфер:
setsockopt (SockNum, SOL_SOCKET, SO_RCVBUF, SockBuffer (1), 1048576)
но я все еще потерял данные. Как я могу исправить мою проблему?
Я использую функцию recv для получения данных. Должен ли recvfrom быть лучше?
Еще один, мне нужно сделать буфер FIFO для UDP. Как я могу это сделать (алгоритмы или примеры)?