offloading file copy work to operating system allows potential speedup #12
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.
Since Plexus Utils enforces Java 7 it is safe to invoke NIO operations introduced by JRE 7. Among those operations are methods for potentially offloading work to the operating system. Theoretically this should be (much) faster on modern JREs than pumping bytes up and down the JVM just to get them from one file into another. Even without any actual performance gain it makes sense to get rid of custom code in favor of JRE code, as it improves class loading speed and reduces memory and
on-disk footprint, while cutting down number of potential bugs at the same time.