1

我正在运行一个 Java 程序,它读取 1-2000000 个文本文件并为每个文件执行一个简单的操作并将它们写回磁盘。在我的 Windows 笔记本电脑上,处理 40,000 个文件需要 8 分钟。在具有 UFS 文件系统的旧 Solaris 系统上,需要 12 个小时。

在与 IT 人员协商后,他建议问题是由于 UFS 中的文件结构需要顺序查找。

我想按照它们出现在 FS 上的顺序读取所有文件,因此无需每次都查找。我该怎么办?

谢谢!

4

1 回答 1

0

你可以考虑

MappedByteBuffer

还尝试优化缓冲区大小(一次读取的块有多大?)

于 2013-05-23T12:48:33.750 回答