From 2be82ff36fe78d5d8a2d45748dbdb0759d80f6dd Mon Sep 17 00:00:00 2001 From: SiboVG Date: Wed, 27 Jul 2022 22:50:28 +0200 Subject: [PATCH] Eureka! Use concurrent-safe collections --- .../sf/openrocket/rocketcomponent/FlightConfiguration.java | 3 ++- core/src/net/sf/openrocket/rocketcomponent/InstanceMap.java | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/core/src/net/sf/openrocket/rocketcomponent/FlightConfiguration.java b/core/src/net/sf/openrocket/rocketcomponent/FlightConfiguration.java index f860d1d77..d8f21cbc9 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/FlightConfiguration.java +++ b/core/src/net/sf/openrocket/rocketcomponent/FlightConfiguration.java @@ -6,6 +6,7 @@ import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.Queue; +import java.util.concurrent.ConcurrentLinkedQueue; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -62,7 +63,7 @@ public class FlightConfiguration implements FlightConfigurableParameter stages = new HashMap(); // Map of stage number to StageFlags of the corresponding stage final protected Map motors = new HashMap(); - final private Collection activeMotors = new ArrayList(); + final private Collection activeMotors = new ConcurrentLinkedQueue(); final private InstanceMap activeInstances = new InstanceMap(); private int boundsModID = -1; diff --git a/core/src/net/sf/openrocket/rocketcomponent/InstanceMap.java b/core/src/net/sf/openrocket/rocketcomponent/InstanceMap.java index 1538e69aa..f40430d4c 100644 --- a/core/src/net/sf/openrocket/rocketcomponent/InstanceMap.java +++ b/core/src/net/sf/openrocket/rocketcomponent/InstanceMap.java @@ -1,9 +1,9 @@ package net.sf.openrocket.rocketcomponent; import java.util.ArrayList; -import java.util.HashMap; import java.util.List; import java.util.Map; +import java.util.concurrent.ConcurrentHashMap; import net.sf.openrocket.util.Transformation; @@ -13,7 +13,7 @@ import net.sf.openrocket.util.Transformation; * @author teyrana (aka Daniel Williams) * */ -public class InstanceMap extends HashMap> { +public class InstanceMap extends ConcurrentHashMap> { // =========== Public Functions ========================