diff --git a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/ExecutionContext.java b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/ExecutionContext.java index ead6eed23..499dbc807 100644 --- a/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/ExecutionContext.java +++ b/spring-batch-infrastructure/src/main/java/org/springframework/batch/item/ExecutionContext.java @@ -17,10 +17,10 @@ package org.springframework.batch.item; import java.io.Serializable; -import java.util.HashMap; import java.util.Map; import java.util.Set; import java.util.Map.Entry; +import java.util.concurrent.ConcurrentHashMap; import org.springframework.util.Assert; @@ -34,7 +34,7 @@ import org.springframework.util.Assert; */ public class ExecutionContext implements Serializable { - private boolean dirty = false; + private volatile boolean dirty = false; private final Map map; @@ -43,7 +43,7 @@ public class ExecutionContext implements Serializable { * internal map. */ public ExecutionContext() { - map = new HashMap(); + map = new ConcurrentHashMap(); } /** @@ -52,7 +52,7 @@ public class ExecutionContext implements Serializable { * @param map Initial contents of context. */ public ExecutionContext(Map map) { - this.map = new HashMap(map); + this.map = new ConcurrentHashMap(map); } /**