Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I summarize what issue 37 is. When reading a Memo file, the current code tries to emulate a random access with the following method:
This method is fragile:
We need a real random access, but with a low memory footprint (= without loading the whole file in memory: see issue #5 and commit d99575c) and with a good speed. This PR proposes to use a
MappedByteBuffer
(see https://www.codeproject.com/Tips/683614/10-Things-to-Know-about-Memory-Mapped-File-in-Java) to let the OS deal with the disk accesses, rather than a plain RandomAccessFile.Note 1: no speed tests made.
Note 2: I updated .gitignore to remove noise from Eclipse or Intellij...