摘要: NIO和IO的区别,应用场景? NIO和IO的主要区别 面向流和面向缓冲 Java NIO和IO之间第一个最大的区别是,IO是面向流的,NIO是面向缓冲区的。 IO面向流意味着每次从流中读一个或多个字节,直至读取所有字节,它们没有被缓存在任何地方。 它不能前后移动流中的数据。如果需要前后移动从流中读 阅读全文
posted @ 2017-02-21 17:16 孤独时光 阅读(147) 评论(0) 推荐(0) 编辑
摘要: Java NIO 管道是2个线程之间的单向数据连接。Pipe有一个source通道和一个sink通道。数据会被写到sink通道,从source通道读取。 创建管道 通过Pipe.open()方法打开管道。例如: 向管道写数据 要向管道写数据,需要访问sink通道。 通过调用SinkChannel的w 阅读全文
posted @ 2017-02-21 16:39 孤独时光 阅读(137) 评论(0) 推荐(0) 编辑
摘要: DatagramChannel是一个能收发UDP包的通道。因为UDP是无连接的网络协议,所以不能像其它通道那样读取和写入。它发送和接收的是数据包。 打开 DatagramChannel 下面是 DatagramChannel 的打开方式: 接收数据 通过receive()方法从DatagramCha 阅读全文
posted @ 2017-02-21 16:34 孤独时光 阅读(261) 评论(0) 推荐(0) 编辑
摘要: ServerSocketChannel是一个可以监听进来的TCP连接的通道,就像标准IO的ServerSocket一样。ServerSocketChannel类在java.nio.channels包中。 打开 ServerSocketChannel 通过调用 ServerSocketChannel. 阅读全文
posted @ 2017-02-21 15:38 孤独时光 阅读(177) 评论(0) 推荐(0) 编辑
摘要: SocketChannel是一个连接到Tcp网络套接字的通道。可以通过以下两种方式创建SocketChannel: 1、打开一个SocketChannel并连接到互联网上的某台服务器。 2、一个新连接到达ServerSocketChannel时,会创建一个SocketChannel。 打开Socke 阅读全文
posted @ 2017-02-21 15:11 孤独时光 阅读(2449) 评论(1) 推荐(0) 编辑
摘要: FileChannel是一个连接到文件的通道,可以通过文件通道读写文件 FileChannel无法设置为非阻塞模式,它总是运行在阻塞模式下。 打开FileChannel 在使用FileChannel之前,必须先打开它,但是,我们无法直接打开一个FileChannel,需要通过使用一个InputStr 阅读全文
posted @ 2017-02-21 14:32 孤独时光 阅读(1221) 评论(0) 推荐(0) 编辑