
Java NIO
文章平均质量分 78
冰火两重天
专注于hadoop平台大数据处理的技术对机器学习以及统计学持续的不断深入
展开
-
Java 缓冲区
1 缓冲区基础 缓冲区是包在一个对象内的基本数据元素数组。相比简单数组,它将数据内容和信息包含在一个单一的对象中。 缓冲区类图:1.1 属性 容量(Capacity):缓冲区能够容纳的数据元素的最大数量,被设定后,永远不能被改变。 上界(Limit):缓冲区的第一个不能被读或写的元素。或者说,缓冲区中现存元素的计数。 位翻译 2012-10-31 15:34:41 · 2732 阅读 · 1 评论 -
使用选择器
选择过程 选择器维护着注册过的通道的集合,并且这些注册关系中的任意一个都是封装在SelectionKey对象中的。每一个Selector 对象维护三个键的集合。public abstract class Selector { // This is a partial API listing public abstract Set keys( );翻译 2012-11-23 22:36:24 · 633 阅读 · 0 评论 -
使用选择键(SelectionKey)
package java.nio.channels; public abstract class SelectionKey { public static final int OP_READ public static final int OP_WRITE public static final int OP_CONNECT public static翻译 2012-11-23 09:51:16 · 4665 阅读 · 0 评论 -
选择器(Selector)基础
选择器基础Selector、SelectableChannel、SelectionKey 从基础的层面看,选择器提供了询问通道是否已准备好执行每个IO的能力。 选择器类:管理一个被注册的通道集合的信息和它们的就绪状态。通道和选择器一起被注册的,并且使用选择器来更新通道的就绪状态。当这么做的时候,可以将被激发的线程挂起,直到有就绪的通道。 可选择通道(Selecta翻译 2012-11-22 09:17:38 · 1427 阅读 · 0 评论 -
socket通道
socket通道基础 sokcet通道类可以运行非阻塞模式并且是可选择的。这两个性能可以激活大程序巨大的可伸缩性和灵活性。 所有的socket通道类(DatagramChannel,SocketChannel和ServerSocketChannel)都继承了java.nio.channels.spi.AbstractSelectableChannel。翻译 2012-11-13 09:14:37 · 1362 阅读 · 0 评论 -
内存映射文件
FileChannel类提供了一个名为map的方法,将一个打开的文件和一个特殊类型的ByteBuffer之间建立一个虚拟内存映射。 由map()方法返回的MappredByteBuffer对象的行为在多数方面类似一个基于内存的缓冲区,只不过该对象的数据元素存储在磁盘上的一个文件。调用get()方法会从磁盘文件中获取数据,此数据反映该文件的当前内容。 public abstrac翻译 2012-11-11 22:04:37 · 1575 阅读 · 0 评论 -
Java 文件通道
1 FileChannel API FileChannel类可以实现常用的read、write以及scatter/gather操作,同时提供了很多专用于文件的新方法。 文件通道总是阻塞的,因此不能被置于非阻塞模式。对于文件IO,最强大之处在于异步IO,它允许一个进程可以从操作系统请求一个或多个IO操作而不必等待这些操作的完成。 FileChannel对象不能直接创建。翻译 2012-11-10 22:58:37 · 1092 阅读 · 0 评论 -
Java 通道基础
1 通道基础 package java.nio.channels; public interface Channel { public boolean isOpen( ); public void close( ) throws IOException; } 对于通道来说,只有两种共同的操作:检查通道是否打开(isOpen())和关闭一个打开的通道(clo翻译 2012-11-08 17:40:15 · 1827 阅读 · 0 评论 -
Java 缓冲区续:字节缓冲区
1 字节缓冲区API 所有基本类型(除布尔)都有相应缓冲区,但字节缓冲区有自己的独特之处。字节是操作系统以及IO使用的基本类型。当在JVM和操作系统间传递数据时,将其他的数据类型拆分成他们的字节是十分必要的。package java.nio; public abstract class ByteBuffer extends Buffer impleme翻译 2012-11-06 22:25:22 · 3135 阅读 · 1 评论 -
Java字符集
字符集基础 Character set(字符集):字符的集合,也就是,带有特殊语义的符号。没有内在数字价值,与ASCII,Unicode,甚至是电脑也没有任何的直接联系。 Coded character set(编码字符集):一个数值赋给一个字符的集合。把代码赋值给字符,这样它们就可以用特定的字符编码集表达数字的结果。其他的编码字符集可以赋不同的数值到同一个字符上。翻译 2012-11-24 16:16:42 · 1169 阅读 · 0 评论