Java NIO传输(一)

来源:互联网 发布:软件测试过程视频 编辑:程序博客网 时间:2024/06/06 00:13

主要功能:提高I/O传输效率。

NIO模块简介:

1.缓冲区(Buffers):原始数据元素组成的固定长度数组,封装在包含状态信息的对象中,存入缓冲区。缓冲区提供了一个会合点:通道既可提取放在缓冲区中的数据(写),也可向缓冲区存入数据供读取(读)。此外,还有一种特殊类型的缓冲区,用于内存映射文件。 

2.通道(channel):Channel  对象模拟了通信连接,管道既可以是单向的(进或出),也可以是双向的(进和出)。可以把通道想象成连接缓冲区和I/O 服务的捷径。

3.文件锁定和内存映射文件(File locking and memory-mapped files): 在多个进程协同工作的情况下,要协调各个进程对共享数据的访问,文件锁定是必不可少的工具。  将文件映射到内存,这样在您看来,磁盘上的文件数据就像是在内存中一样。这利用了操作系统的虚拟内存功能,无需在内存中实际保留一份文件的拷贝,就可实现文件内容的动态高速缓存。

4.套接字(socket):三个新套接字通道,即ServerSocketChannel、SocketChannel  和DatagramChannel 。

5.选择器(Selectors):选择器可实现就绪性选择。Selector 类提供了确定一或多个通道当前状态的机制。使用选择器,借助单一线程,就可对数量庞大的活动I/O 通道实施监控和维护。

6.正则表达式(Regular expressions):

7.字符集(Character sets):  java.nio.charsets 提供了新类用于处理字符与字节流之间的映射关系。您可以对字符转换映射方式进行选择,也可以自己创建映射


                                                                                                                                                                                                          

               ---出自Ron Hitchens《Developing High Performance Applications》

0 0
原创粉丝点击