java NIO
文章平均质量分 81
cangqiongshengjian
这个作者很懒,什么都没留下…
展开
-
NIO和传统的IO区别
传统的socket IO中,需要为每个连接创建一个线程,当并发的连接数量非常巨大时,线程所占用的栈内存和CPU线程切换的开销将非常巨大。使用NIO,不再需要为每个线程创建单独的线程,可以用一个含有限数量线程的线程池,甚至一个线程来为任意数量的连接服务。由于线程数量小于连接数量,所以每个线程进行IO操作时就不能阻塞,如果阻塞的话,有些连接就得不到处理,NIO提供了这种非阻塞的能力。 小量的线...原创 2012-12-24 14:26:51 · 70 阅读 · 0 评论 -
缓冲区基础
一个Buffer 对象是固定数量的数据的容器。其作用是一个存储器,或者分段运输区,在这里数据可被存储并在之后用于检索。对于每个非布尔原始数据类型都有一个缓冲区类。尽管缓冲区作用于它们存储的原始数据类型,但缓冲区十分倾向于处理字节。非字节缓冲区可以在后台执行从字节或到字节的转换,这取决于缓冲区是如何创建的。下面就是buffer的类结构图:[img]http://dl.itey...原创 2012-12-27 16:07:49 · 402 阅读 · 0 评论 -
FileChannel
一个FileChannel 实例只能通过在一个打开的file对象(RandomAccessFile、FileInputStream或 FileOutputStream)上调用getChannel( )方法获取.调用getChannel( )方法会返回一个连接到相同文件的FileChannel 对象且该FileChannel 对象具有与file对象相同的访问权限。然后您就可以使用该通道对象...原创 2012-12-27 22:06:02 · 133 阅读 · 0 评论 -
java io
Java 流在处理上分为字符流和字节流。字符流处理的单元为 2 个字节的 Unicode 字符,分别操作字符、字符数组或字符串,而字节流处理单元为 1 个字节,操作字节和字节数组。Java 内用 Unicode 编码存储字符,字符流处理类负责将外部的其他编码的字符流和 java 内 Unicode 字符流之间的转换。而类 InputStreamReader 和 OutputStreamWri...原创 2013-01-31 23:12:10 · 64 阅读 · 0 评论