少年阿賓

          那些青春的歲月

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            500 Posts :: 0 Stories :: 135 Comments :: 0 Trackbacks

          NIO通常采用Reactor模式,AIO通常采用Proactor模式。AIO簡化了程序的編寫,stream的讀取和寫入都有OS來完成,不需 要像NIO那樣子遍歷Selector。Windows基于IOCP實現AIO,Linux只有eppoll模擬實現了AIO。
          Java7之前的JDK只支持NIO和BIO,從7開始支持AIO。
          你說的IO應該指BIO,這種模式需要阻塞線程,一個IO需要一個線程,NIO由一個thread來監聽connect事件,另外多個thread來監聽讀寫事件,帶來性能上很大提高。

          基于原生nio的socket通信時一種很好的解決方案,基于事件的通知模式使得多并發時不用維持高數量的線程,高并發的socket服務器的java實現成為現實。不過原生nio代碼十分復雜,無論編寫還是修改都是一件頭疼的事。“屏蔽底層的繁瑣工作,讓程序員將注意力集中于業務邏輯本身”,有需求就有生產力進步,

























          posted on 2015-04-21 23:48 abin 閱讀(308) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 玛曲县| 莱西市| 五家渠市| 崇阳县| 阳谷县| 崇明县| 南溪县| 怀远县| 江孜县| 准格尔旗| 鄂州市| 女性| 交城县| 项城市| 沂水县| 玉林市| 扶沟县| 四会市| 恩平市| 金堂县| 浮梁县| 长葛市| 浦城县| 日照市| 博客| 康马县| 修水县| 金坛市| 石景山区| 祁东县| 塘沽区| 黄石市| 香港 | 手机| 乌兰察布市| 蒲城县| 仙桃市| 凉山| 淳安县| 定陶县| 武威市|