Tôi đang tìm cách tối ưu hóa việc xử lý Stream
một cách rõ ràng.Java 8 Lọc và nhóm luồng bằng cùng một phương thức đắt tiền gọi
Tôi có một cái gì đó như thế:
try (Stream<Path> stream = Files.list(targetDir)) {
Map<String, List<Path>> targetDirFilteredAndMapped = stream.parallel()
.filter(path -> sd.containsKey(md5(path)))
.collect(Collectors.groupingBy(path -> md5(path)));
} catch (IOException ioe) { // manage exception }
và kể từ khi md5
chức năng là khá đắt tiền, tôi đã tự hỏi nếu có một cách để gọi nó một lần duy nhất cho mỗi tập tin.
Mọi đề xuất?
bộ dữ liệu sẽ tốt cho điều đó, nếu java có chúng. (và tự động giải nén, để làm cho nó trông đẹp) – njzk2