IAsyncResult接口中有一個CompletedSynchronously屬性,如果異步操作同步完成,則返回true。但是在什麼情況下這是不可理解的。是否有可能以某種方式避免這種情況?請解釋。當異步操作同步完成時?
-1
A
回答
1
由於MSDN狀態:
使用此屬性來確定異步操作同步完成。
但是在什麼情況下,這是無法理解:例如,該屬性可如果I/O請求小
OP一個異步I/O操作返回true。是否有可能以某種方式避免這種情況?
是的,你應該注意:
大多數IAsyncResult接口的實施者將不使用此屬性,應該返回false。從.NET Framework 4.5開始,如果此屬性未正確實現,則使用FromAsync方法創建的任務將無法完成。請參閱.NET Framework 4.5中的應用程序兼容性。
相關問題
- 1. 同步GM_xmlhttpRequest異步操作?
- 2. 套接字異步操作是否會同步完成?
- 3. 爲什麼在異步操作完成之前不會執行同步操作?
- 4. 角度異步操作完成
- 5. 等待完成異步操作
- 6. asio - 等待異步操作完成
- 7. 等待異步操作完成
- 8. 等功能與異步操作完成
- 9. 等待異步操作完成android
- 10. python gio等待異步操作完成
- 11. C#等待異步操作完成
- 12. 等待異步任務操作完成,並繼續當前的異步任務
- 13. 異步操作中的異步操作
- 14. 如何同步異步操作?
- 15. 使用RxJS同步異步操作
- 16. 瞭解同步和異步操作
- 17. Javascript異步和同步ajax操作
- 18. 異步操作,同時處理流
- 19. 任務「尚未計算」:在異步操作仍未完成時完成的異步模塊或處理程序
- 20. 錯誤:異步模塊或處理程序在異步操作仍未完成時完成
- 21. Boost.Asio:異步操作超時
- 22. 查找涉及異步操作的遞歸完成時
- 23. 檢查多個異步網絡操作何時完成
- 24. 如何等待某些操作完成時調用異步API
- 25. 異步操作的可觀測(主題)時,中間有沒有重疊的異步操作是完成
- 26. 異步動作+同步DBQuery VS同步動作+異步DbQuery
- 27. 操作和操作的同步和異步狀態問題
- 28. 爲什麼要在同步操作中使用異步操作?
- 29. 異步調用循環func。當異步完成
- 30. 以同步方式實現長時間異步操作
_「但在什麼情況下這是不可理解的_」 - 你是什麼意思,「不可理解」?我不理解你的問題。你擔心什麼?你有一個實際的編程_problem_你需要幫助解決嗎? –
爲什麼異步操作同步完成? – Mihail
_「爲什麼異步操作同步完成?」 - 因爲它可以。例如,您從文本閱讀器讀取數據,但閱讀器已經緩衝了所需的數據,因此它可以立即完成讀取操作,而無需等待較慢的I/O設備。計算平臺包含緩存,緩衝和其他旨在提高效率的機制的各種示例,有時它們可以很好地工作,以便您可以立即完成您想要完成的任務,而不必像通常那樣等待。 –