nio
文章平均质量分 57
happy7744
这个作者很懒,什么都没留下…
展开
-
Java nio 基础概念笔记
Channel:ServerSocketChannel 创建服务器端Socket,监听某特定端口,接收客户端请求。SocketChannel 用于描述在一个客户端连接,既可以是发起请求的客户端本身的连接,也可以在表示该请求在服务器端与之对应的SocketChannel连接对象。几乎所有的数据读写操作都在这个类中完成。可以有block和nonblock两种方式。 Byte...原创 2012-12-27 12:09:08 · 100 阅读 · 0 评论 -
java nio channel 学习笔记
Channel直译就是通道的意思,通道表示对数据源头和数据目标流经途径的抽象描述,和io中的InputStream和OutputStream类似。首先借用网络上一张Channel的类图:从channel的类层次结构来看在接口层面有区分读和写两种操作(ReadableByteChannel和WritableByteChannel),这点类似InputStream和OutputStre...原创 2014-03-10 23:20:36 · 158 阅读 · 0 评论 -
java nio Buffer 学习笔记
Buffer 是一个对象, 它包含一些要写入或者刚读出的数据,即数据的缓冲区。在 NIO 中加入 Buffer 对象,体现了新库与原 I/O 的一个重要区别,在面向流的 I/O 中,您将数据直接写入或者将数据直接读到 Stream 对象中。buffer + channel 类似原io包中的BufferedInputStream/BufferedOutputStream,对数据流做了缓冲,减少磁...原创 2014-03-17 14:54:05 · 148 阅读 · 0 评论 -
nio Selector 阻塞 唤醒 原理
Selector:java nio无阻塞io实现的关键。阻塞io和无阻塞io:阻塞io是指jdk1.4之前版本面向流的io,服务端需要对每个请求建立一堆线程等待请求,而客户端发送请求后,先咨询服务端是否有线程相应,如果没有则会一直等待或者遭到拒 绝请求,如果有的话,客户端会线程会等待请求结束后才继续执行。当并发量大,而后端服务或客户端处理数据慢时就会产生产生大量线程处于等待中,即上述的阻塞。...2014-03-18 16:18:43 · 1200 阅读 · 4 评论