Java之NIO第二章:nio简介

简介: Java NIO(New IO)是用于Java(来自Java 1.4)的替代IO API,意味着替代标准Java IO和Java Networking API。

Java NIO(New IO)是用于Java(来自Java 1.4)的替代IO API,意味着替代标准Java IO和Java Networking API。 Java NIO提供了与标准IO API不同的IO工作方式。通俗点讲就是new io

Channels 和 Buffers

在标准IO 中,我们一般使用字节流和字符流来处理业务。 但在NIO中,会使用通道和缓冲区。 数据从通道读入缓冲区,或者从缓冲区写入通道channel。

非阻塞 IO

Java NIO能够执行非阻塞IO。

例如,一个线程可以请求一个通道将数据读入缓冲区。 当通道读取数据到缓冲区时,线程可以做其他事情。 一旦数据被读入缓冲区,线程可以继续处理它。 将数据写入通道也是如此。

Selectors 选择器

Java NIO包含“选择器”的概念。 选择器是一个对象,可以监视多个通道的事件(如:连接打开,数据到达等)。 因此,一个线程可以监视多个通道的数据。

后面的章节会详细介绍这几个类。

相关文章
|
1月前
|
存储 Java 数据处理
|
1月前
|
Java API
java中IO与NIO有什么不同
java中IO与NIO有什么不同
|
2月前
|
算法 Java PHP
「译文」Java 垃圾收集参考手册(一):垃圾收集简介
「译文」Java 垃圾收集参考手册(一):垃圾收集简介
|
6天前
|
并行计算 Java 编译器
Java Lambda表达式简介
Java Lambda表达式简介
12 0
|
7天前
|
监控 Java 开发者
深入理解 Java 网络编程和 NIO
【4月更文挑战第19天】Java网络编程基于Socket,但NIO(非阻塞I/O)提升了效率和性能。NIO特点是非阻塞模式、选择器机制和缓冲区,适合高并发场景。使用NIO涉及通道、选择器和事件处理,优点是高并发、资源利用率和可扩展性,但复杂度、错误处理和性能调优是挑战。开发者应根据需求选择是否使用NIO,并深入理解其原理。
|
1月前
|
存储 Java uml
Java-UML类图简介
Java-UML类图简介
18 0
|
2月前
|
移动开发 编解码 网络协议
用Java的BIO和NIO、Netty来实现HTTP服务器(三) 用Netty实现
用Java的BIO和NIO、Netty来实现HTTP服务器(三) 用Netty实现
|
2月前
|
网络协议 Java Linux
用Java来实现BIO和NIO模型的HTTP服务器(二) NIO的实现
用Java来实现BIO和NIO模型的HTTP服务器(二) NIO的实现
|
2月前
|
编解码 网络协议 Java
用Java的BIO和NIO、Netty实现HTTP服务器(一) BIO与绪论
用Java的BIO和NIO、Netty实现HTTP服务器(一) BIO与绪论
|
2月前
|
Java API
Java中的Lambda表达式简介及应用
【2月更文挑战第6天】本文将介绍Java中的Lambda表达式,探讨其基本概念、语法特点和应用场景。通过实际示例演示Lambda表达式在Java编程中的灵活运用,帮助读者更好地理解和应用这一强大的特性。