Browse Source

Prevent potential ConcurrentModificationException in the build queue

online-level-zero-accounts-api-call
CalDescent 3 years ago
parent
commit
2637311ef5
  1. 6
      src/main/java/org/qortal/controller/arbitrary/ArbitraryDataBuilderThread.java

6
src/main/java/org/qortal/controller/arbitrary/ArbitraryDataBuilderThread.java

@ -36,11 +36,15 @@ public class ArbitraryDataBuilderThread implements Runnable {
continue; continue;
} }
Map.Entry<String, ArbitraryDataBuildQueueItem> next = null;
// Find resources that are queued for building // Find resources that are queued for building
Map.Entry<String, ArbitraryDataBuildQueueItem> next = buildManager.arbitraryDataBuildQueue synchronized (buildManager.arbitraryDataBuildQueue) {
next = buildManager.arbitraryDataBuildQueue
.entrySet().stream() .entrySet().stream()
.filter(e -> e.getValue().isQueued()) .filter(e -> e.getValue().isQueued())
.findFirst().orElse(null); .findFirst().orElse(null);
}
if (next == null) { if (next == null) {
continue; continue;

Loading…
Cancel
Save