有没有办法让MappedByteBuffer在文件上拥有滑动窗口?我的文件非常大(20GB),但我每次只想处理100MB。我尝试过仅丢弃旧的缓冲区并从通道创建新的缓冲区,但由于旧的缓冲区似乎无法被重用,这会占用内存。请问有什么好的建议吗?
((DirectBuffer) buffer).cleaner().clean();
http://vanillajava.blogspot.com/2011/12/using-memory-mapped-file-for-huge.html
总之,在64位计算机上,虚拟内存非常便宜,这不是你需要担心的事情。
DirectBuffer
和其他在此处被依赖的类都是sun.misc.*
类,因此受到通常警告的限制。我最初是在1.4版本中看到所有这些内容的:它现在真的还能用吗? - user207421