我正在读取一个50 GB的文件(只读)使用多个线程,每个线程从文件中读取一个连续的段。我试图使用FileChannel 为什么FileChannel比MemoryMappedBuffer表现更好?
获得MemoryMappedBuffer我期待MemoryMappedBuffer跑赢FileChannel但FileChannel执行约30%更好始终两种方法
- 。
我正在寻找解释。 我是一次一GB的内存映射,一旦我用完,我映射另一个1 GB。
我的环境:Windows 7平台的64位Xeon 2.7 GHz的双处理器
Windows 7平台64位至强2.7 GHz 2处理器 – Sid
你有多少RAM?如果你没有超过50GB,FileChannel应该比使用虚拟内存更快。 – ebyrob
阅读整个50个演出文件的目的是什么?你不能一部分处理它,以便它能适合你的公羊吗? – walkeros