IOCP 寫服務程序時的關鍵問題研究[轉]

網絡數據傳輸速度已經不僅僅依賴於帶寬的增加,對軟件系統提出了更高的要求。隨着Windows 對新技術的支持,在現有帶寬前提下,開發出更高系統資源利用率、更高數據吞吐量的網絡服務程序成爲可能。在開發TCP/IP 協議網絡服務時,一般使用SOCKET 編程,爲了對大量客戶端同時響應,必定會創建大量的線程,但是線程是系統資源,它的數量是有限制的,而且在衆多線程之間切換也浪費了許多CPU 時間,嚴重影響了系統的效率。爲了解決這些問題,微軟花了數年時間進行研究和測試的一種非常好的機制來支持這類服務,這種機制就被稱爲IOCP。但從目前的現狀看,在使用IOCP編寫代碼的過程中會許多棘手的問題。而其中信息定位、系統資源限制、報文預處理這3 個問題最具代表性。對此微軟專家也提供了相應的說明文檔及簡單的Demo 程序,但這些資料並沒有提供上述問題的完美解答。一些專業開發專家也只專注於其項目特定應用,而且他們也有自身利益及版權的考慮,對上述問題不可能提供完整、實用的解決方法。在研究這些零碎資料基礎上,下面將討論這些問題的起因和解決辦法。
 
IOCP 寫服務程序時的關鍵問題研究
http://www.88dev.com/forum-viewthread-tid-184-fromuid-1.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章