二javanio中的Channeltransfer内容
java nio中channel操作
分散
将channel中读取的数据分散写入多个buffer中
聚集
将多个buffer写入数据到同一个channel
应用 将消息头和消息体放入到不同buffer,便于分类处理应用 将消息头和消息体放入到不同buffer,便于分类处理
Scattering Reads
将一个channel写入到多个buffer
将ByteBuffer数组作为入参,一个buffer写满后,才会移动到下一个buffer
Gathering writes
将数据写入同一个channel,相当于逆向Scattering Reads
两个通道中数据传输
两个FileChannel传输数据,就像文件的复制
FileChannel fromChannel=fromFile.getChannel(); FileChannel toChannel=toFile.getChannel(); fromChannel.transFerTo(position,count,toChannel); toChannel.transFerFrom(fromChannel,position,count);
position表示从通道中开始传输内容的位置,count表示要传输的条数
SocketChannel只会传输已准备好的数据,接收时缓存区满了停止接收
以上是 二javanio中的Channeltransfer内容 的全部内容, 来源链接: utcz.com/z/516827.html