linapex的gravatar头像
linapex 2014-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
最代码最近下载分享源代码列表最近下载
lyn520  LV3 2023年2月21日
mylzdy  LV12 2022年5月21日
2469095052  LV8 2021年12月30日
newhaijun  LV15 2021年1月4日
Coincidance  LV8 2020年12月3日
gao123qq  LV21 2020年8月28日
wkc  LV21 2020年7月26日
耳朵的巧克力  LV1 2020年5月19日
chalet  LV1 2020年4月14日
yinyun1985  LV14 2020年4月8日
最代码最近浏览分享源代码列表最近浏览
1105570390  LV8 2023年8月17日
xsz0001 2023年8月17日
暂无贡献等级
yyh1252  LV8 2023年8月1日
lyn520  LV3 2023年2月21日
快快乐乐536 2022年10月10日
暂无贡献等级
MoonSight  LV1 2022年7月1日
mylzdy  LV12 2022年5月21日
liys1234  LV9 2022年4月27日
bai620123  LV16 2022年4月16日
7767087  LV2 2022年2月28日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友