IO完成端口 怎么用WSASend一次发送多个数据包
IO完成端口 如何用WSASend一次发送多个数据包
IO完成端口 如何用WSASend一次发送多个数据包
例如,希望发送10个 1k 的数据包,是需要调用10次WSASend吗?还是只需要调用一次就可以了?
最好给一些示例代码,谢谢。
------解决方案--------------------
不一定是调用10次,因为你想发生的数据和实际发送的数据的数目不一定一致
------解决方案--------------------
int WSASend ( SOCKET s, LPWSABUF lpBuffers DWORD dwBufferCount, LPDWORD lpNumberOfBytesSent, DWORD dwFlags, LPWSAOVERLAPPED lpOverlapped, LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine );
你可以吧10个包拼一个WSABUF一次发 也可以建一个WSABUF[10]数组 lpBuffers传数组首地址
dwBufferCount 传10 这样也只要调用一次WSASend 你还可以一次只发一个包 调用10次WSASend
IO完成端口 如何用WSASend一次发送多个数据包
例如,希望发送10个 1k 的数据包,是需要调用10次WSASend吗?还是只需要调用一次就可以了?
最好给一些示例代码,谢谢。
------解决方案--------------------
不一定是调用10次,因为你想发生的数据和实际发送的数据的数目不一定一致
------解决方案--------------------
int WSASend ( SOCKET s, LPWSABUF lpBuffers DWORD dwBufferCount, LPDWORD lpNumberOfBytesSent, DWORD dwFlags, LPWSAOVERLAPPED lpOverlapped, LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine );
你可以吧10个包拼一个WSABUF一次发 也可以建一个WSABUF[10]数组 lpBuffers传数组首地址
dwBufferCount 传10 这样也只要调用一次WSASend 你还可以一次只发一个包 调用10次WSASend