這里主要圍繞著Java NIO展開,從Java NIO的基本使用,到介紹Linux下NIO API,再到Java Selector其底層的實(shí)現(xiàn)原理。

  • Java NIO基本使用

  • Linux下的NIO系統(tǒng)調(diào)用介紹

  • Selector原理

  • Channel和Buffer之間的堆外內(nèi)存

Java NIO基本使用

從JDK NIO文檔里面可以發(fā)現(xiàn),Java將其劃分成了三大塊:Channel,Buffer以及多路復(fù)用Selector。Channel的存在,封裝了對(duì)什么實(shí)體的連接通道(如網(wǎng)絡(luò)/文件);Buffer封裝了對(duì)數(shù)據(jù)的緩沖存儲(chǔ),最后對(duì)于Selector則是提供了一種可以以單線程非阻塞的方式,來(lái)處理多個(gè)連接。

網(wǎng)友評(píng)論