摘要: Java NIO 管道是2个线程之间的单向数据连接。 Pipe有一个source通道和一个sink通道。数据会被写到sink通道,从source通道读取。 举个例子: 阅读全文
posted @ 2017-06-27 21:47 西北野狼 阅读(1621) 评论(0) 推荐(0)
摘要: Java NIO中的DatagramChannel是一个能收发UDP包的通道。操作步骤:打开 DatagramChannel接收/发送数据 代码举例: 阅读全文
posted @ 2017-06-27 20:42 西北野狼 阅读(221) 评论(0) 推荐(0)
摘要: 选择器(Selector) 阻塞式IO流操作示例: 非阻塞式IO流 一、使用 NIO 完成网络通信的三个核心: 1. 通道(Channel):负责连接 java.nio.channels.Channel 接口: |--SelectableChannel |--SocketChannel |--Ser 阅读全文
posted @ 2017-06-27 16:23 西北野狼 阅读(722) 评论(0) 推荐(0)
摘要: 通道(Channel):由 java.nio.channels 包定义的。Channel 表示 IO 源与目标打开的连接。Channel 类似于传统的“流”。只不过 Channel本身不能直接访问数据,Channel 只能与Buffer 进行交互。 Java 为 为 Channel 接口提供的最主要 阅读全文
posted @ 2017-06-27 10:08 西北野狼 阅读(351) 评论(0) 推荐(0)
摘要: 直接缓冲区与非直接缓冲区: 非直接缓冲区:通过 allocate() 方法分配缓冲区,将缓冲区建立在 JVM 的内存中直接缓冲区:通过 allocateDirect() 方法分配直接缓冲区,将缓冲区建立在物理内存中。可以提高效率 非直接缓冲区: 直接缓冲区: 代码示例: 阅读全文
posted @ 2017-06-27 00:02 西北野狼 阅读(5423) 评论(0) 推荐(0)