gpt4 book ai didi

c - 如果在IOCP模型中指定了WSASend的lpCompletionRoutine怎么办?

转载 作者:可可西里 更新时间:2023-11-01 02:52:32 24 4
gpt4 key购买 nike

WriteFileEx 的 MSDN 页面说它不能在 IOCP 模型中使用,因为它有一个参数来指定完成例程。如果文件句柄已与 I/O 完成端口关联,则 WriteFileEx 将失败。

但是,WSASend 允许调用者指定一个完成例程作为它的最后一个参数,而这个函数可以在 IOCP 模型中使用。

我检查了几个带有 IOCP 的 WinSock 示例,发现最后一个参数 lpCompletionRoutine 始终为 null。这是强制性的吗?

最佳答案

文档唯一说的是:

The completion routine follows the same rules as stipulated for Windows file I/O completion routines.

这可能表明您不能将 IOCP 和 lpCompletionRoutine 混合在一起,例如 WriteFileEx()。另一方面,您为什么一开始就想要将它们混合在一起?要么完成端口得到结果,要么完成例程得到结果。为什么需要同时使用两者?

关于c - 如果在IOCP模型中指定了WSASend的lpCompletionRoutine怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14502333/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com