1. channel是什么
-
Java NIO的通道类似流,但又有些不同:
- 既可以从通道中读取数据,又可以写数据到通道。但流的读写通常是单向的。
- 通道可以异步地读写。
- 通道中的数据总是要先读到一个Buffer,或者总是要从一个Buffer中写入。
2.channel 的主要实现类
- FileChannel
从文件中,读写数据。 - DatagramChannel
DatagramChannel 能通过UDP读写网络中的数据。 - SocketChannel
SocketChannel 能通过TCP读写网络中的数据。 - ServerSocketChannel
ServerSocketChannel可以监听新进来的TCP连接,像Web服务器那样。对每一个新进来的连接都会创建一个SocketChannel。
本文只作为netty讲解基础文章,更多nio文章参考
Java NIO系列教程

本文深入探讨Java NIO的Channel概念,对比流的单向特性,强调通道的双向读写能力及异步操作。详述了FileChannel、DatagramChannel、SocketChannel、ServerSocketChannel等主要实现类的功能与应用场景。
303

被折叠的 条评论
为什么被折叠?



