winapi - 如果异步完成,ReadFile() 是否总是返回 FALSE?
问题描述
如果异步完成,ReadFile() 是否总是返回 FALSE?或者当通过从文件系统缓存复制立即完成读取请求时是否存在异常 fe ?我不是在询问要传输的字节数为零时的特殊情况。
解决方案
即使异步调用 ReadFile 也有可能同步完成。如果 ReadFile 返回 true,则无论是否为重叠 IO 打开句柄,它都会同步完成。从 ReadFile 返回 FALSE 但从 GetLastError() 返回的结果不是 ERROR_IO_PENDING 表明对 ReadFile 的调用实际上存在问题。ReadFile 实际异步完成的唯一情况是它返回 FALSE 并且 GetLastError() 返回 ERROR_IO_PENDING。
推荐阅读
- kubernetes - istio 是响应式应用程序的瓶颈吗?
- c# - WPF C#中自定义用户控件的绑定
- html - HTML:防止出现文本输入中的历史记录
- fortify - Fortify:如何使用 fortify rest api 获取项目下的问题(漏洞)列表
- azure-active-directory - 使用 redirect_uri 传递自定义参数
- django - 无法使用 Apache2.4 在 django 中的同一域上托管多个站点
- sql-server - 在 SQL Server 中左连接 2 个表
- powershell - 将参数传递给 PowerShell 函数时的不同行为
- php - 如何在 Codeigniter 中从服务器端获取 id 或将 id 传递给数据表?
- django - Psycopg2:升级还是不升级