雨淋山水 2021-06-28 16:59 采纳率: 0%
浏览 44

JAVA开两个线程对不同的目录里的文件进行IO读写,性能没有变化

线程1 对目录A 

线程2 对目录B

各自且不干扰的 进行目录的遍历IO(两个线程都会各 new 一个文件IO处理类对象)

fileutil中用 LineIterator去读行,读一行计算md5,再用 bufferedwriter写出

读写都指定了utf8的编码

问题是为什么两个线程并发 总耗时和单线程耗时基本相同??

刚刚解决了一个log4j 的日志打印 有锁的问题,关闭打印能提高几秒,但是还是跟串行区别不大

 

串行53秒,并行48秒

  • 写回答

3条回答 默认 最新

  • CSDN专家-sinJack 2021-06-28 17:05
    关注

    你的线程使用不对吧,应该是异步执行被你使用成同步了。而且处理时间较长才能看出效果。

    评论

报告相同问题?