Java语言对操作系统的模型,你知道多少?
创始人
2024-03-17 00:35:03

Java语言对操作系统的模型,你知道多少?本篇我们来一起学习下。

Java 语言对操作系统的NIO模型的特点

NIO的特点:事件驱动模型、单线程处理多任务、非阻塞I/O,I/O读写不再阻塞,而是返回0、基于block的传输比基于流的传输更高效、更高级的IO函数zero-copy、IO多路复用大大提高了Java网络应用的可伸缩性和实用性。基于Reactor线程模型。

Java 语言对操作系统的BIO模型和NIO模型的区别

BIO是面向流的,NIO是面向缓冲区的;BIO的各种流是阻塞的。而NIO是非阻塞的;BIO的Stream是单向的,而NIO的channel是双向的。

Java 语言对操作系统的AIO 模型

AIO:一个有效请求一个线程,客户端的I/O请求都是由OS先完成了再通知服务器应用去启动线程进行处理

Java 语言对操作系统的NIO 模型

NIO:一个请求一个线程,但客户端发送的连接请求都会注册到多路复用器上,多路复用器轮询到连接有I/O请求时才启动一个线程进行处理。

Java 语言对操作系统的BIO 模型

BIO:一个连接一个线程,客户端有连接请求时服务器端就需要启动一个线程进行处理。线程开销大。

NIO的服务端建立过程具体是

NIO的服务端建立过程:Selector.open():打开一个Selector;ServerSocketChannel.open():创建服务端的Channel;bind():绑定到某个端口上。并配置非阻塞模式;register():注册Channel和关注的事件到Selector上;select()轮询拿到已经就绪的事件

相关内容

热门资讯

又一起千亿级大并购!1336亿...   炒股就看金麒麟分析师研报,权威,专业,及时,全面,助您挖掘潜力主题机会!   来源:IPO日报...
金盘科技:拟发行16.72亿元... 转自:财联社【金盘科技:拟发行16.72亿元可转债 用于数据中心电源模块等项目】《科创板日报》22日...
历史天量!突破600亿   01  12月22日,创业板指、科创50双双涨超2%,多只跟踪半导体材料设备、通信设备、5G通信...
极寒体验、极速驰骋!内蒙古冰雪... 来源:央视新闻客户端眼下,各地冰雪游热度不断攀升。这个冰雪季,各地推陈出新,打造新消费场景吸引游客。...
债市震荡分化,超长端主导熊陡 一创固收:超长端走弱带动曲线熊陡今天LPR报价公布,保持不变,有少部分赌降息的资金撤退,上午收益率小...