linapex的gravatar头像
linapex2014-03-01 23:14:42

【Java多线程】写入同一文件,自定义线程池与线程回收利用

【优化版】

测试结果:读取一个 1.85G的CSV格式的文件,耗时 199320 ms,3分钟左右。

 

一个文件好几百兆,1个文件大概200万行左右的数据,现在我要解决的问题是,将 csv的数据读出来,组合数据,生成sql文件。

 

这个场景在平常开发中也是经常要用到的。发出来,希望大家能够指导学习~

 

里面包含了,NIO读取文件,多线程回收利用,线程锁等等。

 

代码中的 tm()方法,用过此方法测试了格式化替换10万条数据,耗时 47 ms. 100W条数据也是470ms,一秒都不到,性能已经非常高了,有需要的同志可以整合进项目中。

 

注意:代码几经改动,性能方面初步无法优化了,除非是用一些其他方法,好了,项目已经打包了,可以直接导入运行了,避免了上次的烦恼,没有使用第三方库。

【Java多线程】写入同一文件,自定义线程池与线程回收利用【Java多线程】写入同一文件,自定义线程池与线程回收利用


打赏

文件名:TempCode.rar,文件大小:13.397K下载
  • /
      • /TempCode
        • /TempCode/.classpath
        • /TempCode/.project
          • /TempCode/.settings
            • /TempCode/.settings/org.eclipse.jdt.core.prefs
          • /TempCode/bin
              • /TempCode/bin/com
                  • /TempCode/bin/com/linapex
                      • /TempCode/bin/com/linapex/code
                        • /TempCode/bin/com/linapex/code/CallBack3.class
                        • /TempCode/bin/com/linapex/code/Main$1.class
                        • /TempCode/bin/com/linapex/code/Main.class
                        • /TempCode/bin/com/linapex/code/StopWatch2.class
                        • /TempCode/bin/com/linapex/code/TaskWithResult.class
                        • /TempCode/bin/com/linapex/code/WriteSqlHandle2.class
最代码最近下载分享源代码列表最近下载
newhaijun LV141月4日
月亮月亮月亮星星星星
Coincidance LV82020年12月3日
月亮月亮
gao123qq LV212020年8月28日
太阳月亮星星
wkc LV212020年7月26日
太阳月亮星星
耳朵的巧克力 LV12020年5月19日
星星
chalet LV12020年4月14日
星星
yinyun1985 LV122020年4月8日
月亮月亮月亮
Dkodak LV72020年3月19日
月亮星星星星星星
shenchong LV192020年1月4日
太阳星星星星星星
blazing LV22019年9月19日
星星星星
最代码最近浏览分享源代码列表最近浏览
暂无贡献等级
当前明月7月26日
暂无贡献等级
尹恒yingying LV74月29日
月亮星星星星星星
lky827567011 LV13月15日
星星
tianli3000 LV73月13日
月亮星星星星星星
neilweixing3月10日
暂无贡献等级
张信哲 LV82月5日
月亮月亮
Quinto1月25日
暂无贡献等级
newhaijun LV141月4日
月亮月亮月亮星星星星
2469095052 LV62020年12月15日
月亮星星星星
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友