From a462d0e85e9f0712fc750856bf3946900505d0eb Mon Sep 17 00:00:00 2001 From: Trustin Lee Date: Fri, 19 Feb 2010 09:00:00 +0000 Subject: [PATCH] Removed volatile from some internal state member variables in decoders because they are always either: 1) modified from the same threads or 2) protected by happens-before condition that is met by Executor's internal synchronization constructs --- .../jboss/netty/handler/codec/http/HttpChunkAggregator.java | 2 +- .../jboss/netty/handler/codec/http/HttpContentDecoder.java | 2 +- .../jboss/netty/handler/codec/http/HttpMessageDecoder.java | 6 +++--- .../jboss/netty/handler/codec/replay/ReplayingDecoder.java | 6 +++--- .../codec/serialization/CompatibleObjectDecoder.java | 2 +- 5 files changed, 9 insertions(+), 9 deletions(-) diff --git a/src/main/java/org/jboss/netty/handler/codec/http/HttpChunkAggregator.java b/src/main/java/org/jboss/netty/handler/codec/http/HttpChunkAggregator.java index f9194fcef6..3f1c5fa10b 100644 --- a/src/main/java/org/jboss/netty/handler/codec/http/HttpChunkAggregator.java +++ b/src/main/java/org/jboss/netty/handler/codec/http/HttpChunkAggregator.java @@ -53,7 +53,7 @@ import org.jboss.netty.handler.codec.frame.TooLongFrameException; public class HttpChunkAggregator extends SimpleChannelUpstreamHandler { private final int maxContentLength; - private volatile HttpMessage currentMessage; + private HttpMessage currentMessage; /** * Creates a new instance. diff --git a/src/main/java/org/jboss/netty/handler/codec/http/HttpContentDecoder.java b/src/main/java/org/jboss/netty/handler/codec/http/HttpContentDecoder.java index 84bbfc0162..060adb3aff 100644 --- a/src/main/java/org/jboss/netty/handler/codec/http/HttpContentDecoder.java +++ b/src/main/java/org/jboss/netty/handler/codec/http/HttpContentDecoder.java @@ -48,7 +48,7 @@ import org.jboss.netty.handler.codec.embedder.DecoderEmbedder; */ public abstract class HttpContentDecoder extends SimpleChannelUpstreamHandler { - private volatile DecoderEmbedder decoder; + private DecoderEmbedder decoder; /** * Creates a new instance. diff --git a/src/main/java/org/jboss/netty/handler/codec/http/HttpMessageDecoder.java b/src/main/java/org/jboss/netty/handler/codec/http/HttpMessageDecoder.java index fa8e1a8fc4..3b63c0ab93 100644 --- a/src/main/java/org/jboss/netty/handler/codec/http/HttpMessageDecoder.java +++ b/src/main/java/org/jboss/netty/handler/codec/http/HttpMessageDecoder.java @@ -109,9 +109,9 @@ public abstract class HttpMessageDecoder extends ReplayingDecoder> private final AtomicReference cumulation = new AtomicReference(); private final boolean unfold; - private volatile ReplayingDecoderBuffer replayable; - private volatile T state; - private volatile int checkpoint; + private ReplayingDecoderBuffer replayable; + private T state; + private int checkpoint; /** * Creates a new instance with no initial state (i.e: {@code null}). diff --git a/src/main/java/org/jboss/netty/handler/codec/serialization/CompatibleObjectDecoder.java b/src/main/java/org/jboss/netty/handler/codec/serialization/CompatibleObjectDecoder.java index 7102cedba0..d29585e577 100644 --- a/src/main/java/org/jboss/netty/handler/codec/serialization/CompatibleObjectDecoder.java +++ b/src/main/java/org/jboss/netty/handler/codec/serialization/CompatibleObjectDecoder.java @@ -59,7 +59,7 @@ import org.jboss.netty.handler.codec.replay.ReplayingDecoder; public class CompatibleObjectDecoder extends ReplayingDecoder { private final SwitchableInputStream bin = new SwitchableInputStream(); - private volatile ObjectInputStream oin; + private ObjectInputStream oin; /** * Creates a new decoder.