Channel就是一个通道,用于传输数据,两端分别是缓冲区和实体(文件或者套接字),通道的特点(也是NIO的特点):通道中的数据总是要先读到一个缓冲区,或者总是要从一个缓冲区中读入。 Channel的分类 1) FileChannel:从文件中读写数据 2) SocketChannel:通过TCP协 ...
分类:
编程语言 时间:
2016-08-25 21:11:25
阅读次数:
230
对比几种复制方法 复制的文件是980m的txt文件 1、 FileChannel 方法 代码: 耗时:807ms 使用NewIO技术复制大文件的速度最快,尤其是此方法中使用了内存映射技术,速度非常快。 2、 FileInputStream技术 耗时: 1072ms,速度也不慢,在处理文本文档的时候传 ...
分类:
编程语言 时间:
2016-08-14 17:35:44
阅读次数:
256
查了半小时的异常,最后发现实际类型居然是输入流,而不是输出流 仅此日记警告自己一定不能心急,晚上累了就好好休息吧。。。。 ...
分类:
其他好文 时间:
2016-07-24 01:40:47
阅读次数:
156
1、类图 Channle主要分为两类:File操作对应的FIleChannel和Stream操作对应的socket的3个channel。问题:stream操作除了socket还有其他的吧?例如串口等 3.1.1打开通道通道可以以多种方式创建。Socket 通道有可以直接创建新socket 通道的工? ...
分类:
编程语言 时间:
2016-07-18 14:04:22
阅读次数:
265
java读取大文件 超大文件的几种方法 转自:http://wgslucky.blog.163.com/blog/static/97562532201332324639689/ java读取大文件 超大文件的几种方法 转自:http://wgslucky.blog.163.com/blog/stat ...
分类:
编程语言 时间:
2016-07-13 15:29:34
阅读次数:
628
本文系微博运维数据平台(DIP)在Flume方面的优化扩展经验总结,在使用Flume FileChannel的场景下将吞吐率由10M/s~20M/s提升至80M/s~90M/s,分为四个部分进行介绍: 应用场景 Flume实例架构 Flume调试及优化扩展 Flume Todo 生产环境部署 1. ...
分类:
Web程序 时间:
2016-06-21 12:16:52
阅读次数:
2259
if(file.length()>0){ MethodgetCleanerMethod; sun.misc.Cleanercleaner=null; try{ getCleanerMethod=byteBuffer.getClass().getMethod("cleaner", newClass[0]); getCleanerMethod.setAccessible(true); cleaner=(sun.misc.Cleaner)getCleanerMetho..
分类:
其他好文 时间:
2016-05-18 10:57:28
阅读次数:
519
package io;
import java.nio.*;
import java.nio.channels.*;
import java.io.*;
/*
* 三种类型的流用以产生可写的,可读的,可读可写的通道。
* getChannel()将会产生一个FileChannel通道,可以向他传送用于读写的ByteBuffer,并且可以锁定文件的某些区域用于独占式访问。
* 将字节放于Byt...
分类:
编程语言 时间:
2016-05-12 21:45:46
阅读次数:
216
1. 错误提示 配置文件: 2. 解决方法 链接: http://serverfault.com/questions/690588/flume-error-log-while-using-filechannel 只要把配置文件中的关于channel配置checkpointDir和dataDir目录清 ...
分类:
Web程序 时间:
2016-04-26 17:30:55
阅读次数:
934
1. 在Java NIO中,如果两个通道中有一个是FileChannel,那你可以直接将数据从一个channel(译者注:channel中文常译作通道)传输到另外一个channel。 (1)transferFrom(): FileChannel的 transferFrom()方法可以将数据 从 源通 ...
分类:
编程语言 时间:
2016-03-29 21:05:13
阅读次数:
184