当前位置: 首页 > news >正文

37、Windows 异步 I/O、完成端口与对象安全

Windows 异步 I/O、完成端口与对象安全

1. 异步 I/O 方法概述

Windows 提供了三种执行异步 I/O 的方法,下面为你详细介绍:
| 方法 | 特点 |
| — | — |
| 线程 | 最通用且简单的技术。每个线程负责一个或多个顺序的、阻塞的 I/O 操作序列,且每个线程应有自己的文件或管道句柄。 |
| 重叠 I/O | 允许单个线程对单个文件句柄执行异步操作,但每个操作必须有一个事件句柄,而不是线程和文件句柄对。需要专门等待每个 I/O 操作完成,然后执行任何所需的清理或排序操作。 |
| 扩展 I/O | 自动调用完成代码,不需要额外的事件。 |

重叠 I/O 的一个不可或缺的优势是能够创建 I/O 完成端口,这一点在后续会有程序示例说明。单个服务器线程可以为多个客户端服务,这在有数千个客户端的情况下非常重要,因为内存可能不足以支持同等数量的服务器线程。

2. 使用 I/O 完成端口的服务器示例

2.1 服务器设计

示例中的服务器(Program 14 - 4)对之前的程序进行了修改,以使用 I/O 完成端口。该服务器创建了一个小的服务器线程池和一个较大的重叠管道句柄池,并为每个句柄设置了完成键。重叠句柄被添加到完成端口,并发出相应调用。服务器线程等待与客户端连接和读取操作相关的完成事件。

2.2 客户端管道状态

每个客户端管道会经历一系列状态,这些状态存储在每个管道的特定结构中,具体如下:
1.连接状态:管道与服务器线程建立连接。
2.

http://www.cnnetsun.cn/news/176066.html

相关文章:

  • Excalidraw新增自动布局功能,节省手动排版时间
  • 35、PowerShell 基础操作符及语句详解
  • 19、Windows 服务安全深度解析与防护策略
  • 31、Windows Server 2008 安全配置与管理全解析
  • 33、补丁管理全攻略
  • 32、PowerShell 文件处理全解析
  • 40、使用 COM 自动化 Windows 及相关应用
  • 50、PowerShell 管理脚本与操作示例详解
  • 78、计算机硬件、性能与网络问题排查及搭建指南
  • 基于Java+SpringBoot+SSM电脑商城系统(源码+LW+调试文档+讲解等)/电脑商城平台/电脑购物系统/计算机商城系统/在线电脑商城/电脑销售系统/电脑商城软件
  • Excalidraw助力技术布道师打造精彩演讲视觉素材
  • Excalidraw打造沉浸式头脑风暴环境,激发团队创造力
  • 一种新型几何形状被发送到国际空间站,很可能是3D打印的
  • Excalidraw绘图元素库持续更新,满足更多业务需求
  • Excalidraw如何保护用户隐私?数据存储策略说明
  • 用Excalidraw做技术分享?这些技巧让你事半功倍
  • 用自然语言生成图表?Excalidraw AI功能实测报告
  • Excalidraw + GPU算力 极速AI图形生成体验
  • 信息学奥赛一本通 1618:越狱 | 洛谷 P3197 [HNOI2008] 越狱
  • Excalidraw构建RFM模型:客户价值分层可视化
  • Vue.js入门指南:从核心特性到实战体验
  • Excalidraw绘制商业模式创新:价值主张重构
  • Excalidraw呈现智能合约流程:DApp交互路径
  • 58、高效管理联系人与日历:Windows Live 实用指南
  • 64、电脑使用安全与磁盘管理全攻略
  • 67、Windows 7磁盘管理与日常维护指南
  • 2025-12-22 全国各地响应最快的 BT Tracker 服务器(移动版)
  • Excalidraw呈现医疗信息系统:HIS/PACS集成视图
  • 15、深入探索Windows 7维护与故障排除
  • 【毕业设计】CBA球员数据可视化分析系统的设计与实现(系统配套论纹+答辩PPT)