什么是NIO
原创本文主要是知识性和概念性的介绍。NIO涉及的API更重要的是,熟练使用需要大量的接触。请参阅Java图书推荐。图书推荐。
NIO1.0
NIO1.0是Java1.4(2002)介绍了以下几个主要特点。介绍了以下主要功能。介绍了以下主要功能。
- 进行异步I/O操作缓冲区用于操作缓冲区操作的操作缓冲区ByteBuffer等;
- 进行异步I/O作业用管道的作业作业用作业管线Pipe;
- 进行异步I/O操作(异步或同步)的操作(异步或同步Channel,包括ServerSocketChannel和SocketChannel;
- 支持多个字符集的编码功能和解码功能。
- 实现非阻塞实现非阻塞I/O用于操作的多路复用器selector;
- 基于流行的基于流行的基于流行的Perl实现的正则表达式类库。已实现正则表达式类库。
- 文件通道FileChannel。
NIO2.0
NIO2.0是Java1.7(2011.07),主要提供了。)介绍,主要提供。
- 提供批量获取文件属性的功能API,这些API它与平台无关,不与特征文件系统耦合,并提供标准文件系统SPI供单个服务提供商扩展实施。
- 提供AIO支持基于文件的异步功能的功能支持基于文件的异步I/O操作和针对网络套接字的异步操作。
- 完成JSR-51定义的频道功能,包括对配置和组播数据报等的支持。
AsynchronousChannel接口的主要用途是使通道支持异步I/O操作。
异步I/O该操作通过以下两种方式实现。该操作通过两种方式实现。
(1)方法
Future
operation代表I/O操作的名称,其中大部分是读或写操作。泛型变量V代表经过I/O操作后返回的结果的数据类型。使用Future对象可用于检测对象可用于检测I/O操作是否完成,或等待完成,并等待接收I/O运算处理后的结果。
(2)回调
void operation(... A attachment, CompletionHandler<V,? super A> handler)
A对象类型类型attachment的主要作用是允许外部和CompletionHandler对象进行内部通信。vbl.使用CompletionHandler通过回调实现的异步回调方法异步回调方法I/O手术的优点是手术的优点是手术的优点CompletionHandler对象可以重复使用。什么时候I/O操作成功或失败时,操作成功或失败时,操作成功或失败时,CompletionHandler将调用对象中指定的方法。
转载于:https://www.cnblogs.com/blouson/p/NIO.html
版权声明
所有资源都来源于爬虫采集,如有侵权请联系我们,我们将立即删除