国产成人毛片视频|星空传媒久草视频|欧美激情草久视频|久久久久女女|久操超碰在线播放|亚洲强奸一区二区|五月天丁香社区在线|色婷婷成人丁香网|午夜欧美6666|纯肉无码91视频

深入理解java nio Java中BIO,NIO和AIO的區(qū)別和應(yīng)用場(chǎng)景?

Java中BIO,NIO和AIO的區(qū)別和應(yīng)用場(chǎng)景?AIO完全是異步通信。NiO是同步無(wú)阻塞通信。有一個(gè)典型的例子。把水燒開(kāi)。假設(shè)有一個(gè)場(chǎng)景,有一排水壺(顧客)在燒開(kāi)水。AIO的做法是,每個(gè)水壺都配有一

Java中BIO,NIO和AIO的區(qū)別和應(yīng)用場(chǎng)景?

AIO完全是異步通信。NiO是同步無(wú)阻塞通信。有一個(gè)典型的例子。把水燒開(kāi)。假設(shè)有一個(gè)場(chǎng)景,有一排水壺(顧客)在燒開(kāi)水。AIO的做法是,每個(gè)水壺都配有一個(gè)開(kāi)關(guān),當(dāng)水沸騰時(shí),開(kāi)關(guān)會(huì)提醒相應(yīng)的線程處理。NiO的方法是讓線程連續(xù)觀察每個(gè)水壺,并根據(jù)每個(gè)水壺的當(dāng)前狀態(tài)對(duì)其進(jìn)行處理。Bio的方法是讓線程留在一個(gè)水壺中,直到水壺沸騰,然后再處理下一個(gè)水壺。由此可見(jiàn),AIO最聰明也最省力,NiO相對(duì)省力,一個(gè)人能看到所有的鍋,bio最笨,勞動(dòng)力低。

為什么nio效率會(huì)比bio高?

核心是合理利用硬件提供的功能。NiO只需要CPU在通道的幫助下參與IO的開(kāi)始和結(jié)束,其他時(shí)段的控制權(quán)轉(zhuǎn)移到通道,直接在磁盤(pán)和內(nèi)存之間交換數(shù)據(jù);bio需要CPU中的寄存器參與數(shù)據(jù)傳輸;如果是直接訪問(wèn)模式,CPU還需要輪詢檢查,而中斷驅(qū)動(dòng)模式也需要在字傳輸后進(jìn)行檢查??傊?,NiO通過(guò)將CPU控制權(quán)委托給通道,減少了中斷,不參與數(shù)據(jù)傳輸,提高了數(shù)據(jù)處理速度。