Можете ли вы настроить вызов recive в System. Net .Sockets, чтобы вести себя как winsocket2 WSARecv с установленным флагом MSG_PUSH_IMMEDIATE - PullRequest
0 голосов
/ 30 января 2020

Я подключаюсь к серверу, который не устанавливает флаг P SH в своих TCP-пакетах. Поскольку задержка важна, мне нужно игнорировать флаг P SH при получении и пересылке того, что находится в буфере немедленно.

Это возможно в winsock2 api с функцией WSARecv и флагом MSG_PUSH_IMMEDIATE. Возможна ли такая же функциональность с разъемом. net?

1 Ответ

1 голос
/ 31 января 2020

Похоже, Роуэн Смит идея работает. Я добавил (SocketFlags)0x20 в функцию BeginReceive (), и она была передана в функцию WSARecv () в фоновом режиме, поэтому задержка была удалена.

Я проверил. net framework 4.5.1 и 4.8, и обе реализации просто передают SocketFlags в WSARecv () без их использования или изменения.

Спасибо!

...