日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

一,NIO新特性 NIO的一些新特性有:非阻塞I/O,選擇器,緩沖以及管道。管道(Channel),緩沖(Buffer) ,選擇器( Selector)是其主要特征。

二,Channel、Selector解釋 Channel——管道實際上就像傳統(tǒng)IO中的流,到任何目的地(或來自任何地方)的所有數(shù)據(jù)都必須通過一個 Channel 對象。一個 Buffer 實質(zhì)上是一個容器對象。 Selector——選擇器用于監(jiān)聽多個管道的事件,使用傳統(tǒng)的阻塞IO時我們可以方便的知道什么時候可以進(jìn)行讀寫,而使用非阻塞通道,我們需要一些方法來知道什么時候通道準(zhǔn)備好了,選擇器正是為這個需要而誕生的。

三,IO是面向流的,NIO是面向塊(緩沖區(qū)) IO面向流的操作一次一個字節(jié)地處理數(shù)據(jù)。一個輸入流產(chǎn)生一個字節(jié)的數(shù)據(jù),一個輸出流消費一個字節(jié)的數(shù)據(jù)。,導(dǎo)致了數(shù)據(jù)的讀取和寫入效率不佳; NIO面向塊的操作在一步中產(chǎn)生或者消費一個數(shù)據(jù)塊。按塊處理數(shù)據(jù)比按(流式的)字節(jié)處理數(shù)據(jù)要快得多,同時數(shù)據(jù)讀取到一個它稍后處理的緩沖區(qū),需要時可在緩沖區(qū)中前后移動。這就增加了處理過程中的靈活性。通俗來說,NIO采取了“預(yù)讀”的方式,當(dāng)你讀取某一部分?jǐn)?shù)據(jù)時,他就會猜測你下一步可能會讀取的數(shù)據(jù)而預(yù)先緩沖下來。

四,IO是阻塞的,NIO是非阻塞的 對于傳統(tǒng)的IO,當(dāng)一個線程調(diào)用read() 或 write()時,該線程被阻塞,直到有一些數(shù)據(jù)被讀取,或數(shù)據(jù)完全寫入。該線程在此期間不能再干任何事情了。 而對于NIO,使用一個線程發(fā)送讀取數(shù)據(jù)請求,沒有得到響應(yīng)之前,線程是空閑的,此時線程可以去執(zhí)行別的任務(wù),而不是像IO中那樣只能等待響應(yīng)完成。

五,NIO和IO適用場景 如果需要管理同時打開的成千上萬個連接,這些連接每次只是發(fā)送少量的數(shù)據(jù),例如聊天服務(wù)器,這時候用NIO處理數(shù)據(jù)可能是個很好的選擇。比如:Netty是一個NIO客戶端、服務(wù)端框架。允許快速簡單的開發(fā)網(wǎng)絡(luò)應(yīng)用程序。 而如果只有少量的連接,而這些連接每次要發(fā)送大量的數(shù)據(jù),這時候傳統(tǒng)的IO更合適。使用哪種處理數(shù)據(jù),需要在數(shù)據(jù)的響應(yīng)等待時間和檢查緩沖區(qū)數(shù)據(jù)的時間上作比較來權(quán)衡選擇。

分享到:
標(biāo)簽:java
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定