我有一個錯誤情況,其中即時嘗試讀取比文件中實際存在更多的字節。在同步情況下,它會失敗並報告相應的錯誤,因爲我們調用waitFrObject並等待io完成,並測試readbytes> = ToReadbytes。但是在異步的情況下,我們開始讀取,忽略ReadFile返回的IO狀態flage(這是預期的)並繼續我們的操作。 所以這個錯誤實際上並沒有在異步情況下被捕獲。現在,如果我檢查等待IO完成以檢查readbytes> = ToreadBytes,那麼它將不再是異步的,因爲我們是waitng。那麼我該如何處理這種情況呢? (注意 - 讀取比實際存在的字節數更多的錯誤是使錯誤重現的方法之一)測試如果readbytes等於在異步模式下使用ReadFile讀取字節
Im使用windown的ReadFile函數進行讀取。
沒有一些可用的代碼,我們不能真正幫助您,因爲我們沒有足夠的信息來了解您嘗試過的內容。與此同時,您應該花一些時間閱讀[MSDN]上的文檔(http://msdn.microsoft.com/en-gb/library/windows/desktop/aa365683%28v=vs.85%29.aspx),或者查看出一些[示例](http://code.msdn.microsoft.com/windowsdesktop/CppAsynchronousIO-a3f7c07d)。 – icabod 2014-09-23 12:46:34