1

我使用TCPClientNetworkStream通过套接字发送短消息(Modbus 帧)。我使用Write()方法 fromNetworkStream发送数据。

问题是我使用了两次或更多write(),但消息是在一个 TCP 帧中发送的(由 Wireshark 检查),对我来说,所有写入的消息都将在其他 TCP 帧中发送是必要的。

有什么想法可以解决这个问题吗?

4

1 回答 1

0

听起来好像 TCP 正在缓冲您的数据以优化性能。您可能希望在两次发送之间设置延迟或禁用 Nagel 算法(使用 SetSocketOption NoDelay true)。

这可能会影响您的 TCP 性能,因此您需要小心何时/何地使用它。

麦克风

于 2013-01-18T22:48:48.233 回答