【发布时间】:2016-06-15 14:38:05
【问题描述】:
这类似于this question,但用于Socket.Send
给定一些这样的代码
int bytesSent = socket.Send(BitConverter.GetBytes((int)0));//send 4 bytes
socket.Send 的返回值是否可能小于 4? 在回答之前请继续阅读
文档明确指出:
Send 同步向 Connect 或 Accept 方法中指定的远程主机发送数据,并返回成功发送的字节数。
询问的原因是我正在尝试跟踪调用Socket.Send 的进程间套接字连接(两个进程在同一台服务器上运行,win2012 R2)的问题,如上所述。
虽然我熟悉通过套接字安全发送/接收字节我希望得到了解本机调用内部的人的确认,这可以确认进程间调用不发送 4 的可能性个字节,因此 Socket.Send 返回的字节数比这少。这可能在负载下实现吗?
可以通过正确写入套接字轻松修复代码,但如果有人看到这个并说no i would expect a **minimum** of 4 bytes for this type of call,那么显然这不是我的问题
【问题讨论】: