您是否可以在System.Net.Sockets中设置回叫调用以使其表现为具有MSG_PUSH_IMMEDIATE标志设置的winsocket2 WSARecv

问题描述 投票:0回答:1

我正在连接未在其TCP数据包上设置PSH标志的服务器。由于延迟很重要,因此我需要忽略接收时的PSH标志并立即转发缓冲区中的任何内容。

这在具有WSARecv函数和MSG_PUSH_IMMEDIATE标志的winsock2 API中是可能的。 .net套接字可以实现相同的功能吗?

c# sockets tcp winsock2
1个回答
0
投票

[看起来像Rowan Smith想法可行。我在BeginReceive()函数中添加了(SocketFlags)0x20,它在后台传播到WSARecv()函数,因此消除了延迟。

[我检查了.net Framework 4.5.1和4.8,两个实现都只是将SocketFlags传递给WSARecv(),而没有使用或修改它们。

谢谢!

© www.soinside.com 2019 - 2024. All rights reserved.