完成键与扩展 OVERLAPPED 结构
Completion key vs extending the OVERLAPPED structure
我不确定在处理与每个套接字关联的数据时应该采用什么方法。我应该使用完成键还是应该扩展 OVERLAPPED
结构。
扩展 OVERLAPPED
结构似乎是一种 hack,那么它比完成密钥有什么优势吗?
完成键是 "per connection" 数据,也就是说,对于给定句柄上的所有操作,每次完成时它都是相同的,这是 link 到 "file" 的好方法或 "socket" 结构。
Overlapped 是 "per operation" 数据,句柄上的每个并发操作都必须使用唯一的重叠结构。这使得它非常适合保存每个操作数据,例如 "type of operation" 和相关内存(例如缓冲区)等
"extended overlapped" 不是 hack,而是应该使用设计的方式。
我不确定在处理与每个套接字关联的数据时应该采用什么方法。我应该使用完成键还是应该扩展 OVERLAPPED
结构。
扩展 OVERLAPPED
结构似乎是一种 hack,那么它比完成密钥有什么优势吗?
完成键是 "per connection" 数据,也就是说,对于给定句柄上的所有操作,每次完成时它都是相同的,这是 link 到 "file" 的好方法或 "socket" 结构。
Overlapped 是 "per operation" 数据,句柄上的每个并发操作都必须使用唯一的重叠结构。这使得它非常适合保存每个操作数据,例如 "type of operation" 和相关内存(例如缓冲区)等
"extended overlapped" 不是 hack,而是应该使用设计的方式。