From dbf8266a45fd974d35c8cfc7b11c2a5732a8e9a5 Mon Sep 17 00:00:00 2001 From: extio-de Date: Sat, 11 Oct 2025 11:18:44 +0200 Subject: [PATCH] Refactor: Replace LinkedBlockingQueue with ArrayBlockingQueue for improved performance --- src/main/java/de/extio/checkdataintegrity/Task.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/main/java/de/extio/checkdataintegrity/Task.java b/src/main/java/de/extio/checkdataintegrity/Task.java index 38be008..01e024a 100644 --- a/src/main/java/de/extio/checkdataintegrity/Task.java +++ b/src/main/java/de/extio/checkdataintegrity/Task.java @@ -7,11 +7,11 @@ import java.nio.file.InvalidPathException; import java.nio.file.NoSuchFileException; import java.nio.file.Path; import java.util.Arrays; +import java.util.concurrent.ArrayBlockingQueue; import java.util.concurrent.BlockingQueue; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Future; -import java.util.concurrent.LinkedBlockingQueue; import java.util.function.Consumer; import de.extio.checkdataintegrity.BufferPool.Buffer; @@ -41,8 +41,8 @@ class Task implements Consumer { final Path p1 = Path.of(this.args.path1() + rel); try (RandomAccessFile raf0 = new RandomAccessFile(path.toFile(), "r"); RandomAccessFile raf1 = new RandomAccessFile(p1.toFile(), "r")) { - final BlockingQueue queue0 = new LinkedBlockingQueue<>(1); - final BlockingQueue queue1 = new LinkedBlockingQueue<>(1); + final BlockingQueue queue0 = new ArrayBlockingQueue<>(1); + final BlockingQueue queue1 = new ArrayBlockingQueue<>(1); final Future future0 = this.executorService.submit(() -> this.loader(raf0, queue0)); final Future future1 = this.executorService.submit(() -> this.loader(raf1, queue1)); try {