Removing Synchronization performed on java.util.concurrent.ConcurrentLinkedDeque object in class NettyConnection

This commit is contained in:
kurobako 2016-03-04 23:44:16 +01:00 committed by Clebert Suconic
parent 958d746692
commit 1c2164adad
1 changed files with 20 additions and 24 deletions

View File

@ -18,8 +18,8 @@ package org.apache.activemq.artemis.core.remoting.impl.netty;
import java.net.SocketAddress; import java.net.SocketAddress;
import java.util.Deque; import java.util.Deque;
import java.util.LinkedList;
import java.util.Map; import java.util.Map;
import java.util.concurrent.LinkedBlockingDeque;
import java.util.concurrent.Semaphore; import java.util.concurrent.Semaphore;
import io.netty.buffer.ByteBuf; import io.netty.buffer.ByteBuf;
@ -71,7 +71,7 @@ public class NettyConnection implements Connection {
/** if {@link #isWritable(ReadyListener)} returns false, we add a callback /** if {@link #isWritable(ReadyListener)} returns false, we add a callback
* here for when the connection (or Netty Channel) becomes available again. */ * here for when the connection (or Netty Channel) becomes available again. */
private final Deque<ReadyListener> readyListeners = new LinkedBlockingDeque<>(); private final Deque<ReadyListener> readyListeners = new LinkedList<>();
// Static -------------------------------------------------------- // Static --------------------------------------------------------
@ -102,19 +102,16 @@ public class NettyConnection implements Connection {
@Override @Override
public boolean isWritable(ReadyListener callback) { public synchronized boolean isWritable(ReadyListener callback) {
synchronized (readyListeners) {
if (!ready) { if (!ready) {
readyListeners.push(callback); readyListeners.push(callback);
} }
return ready; return ready;
} }
}
@Override @Override
public void fireReady(final boolean ready) { public synchronized void fireReady(final boolean ready) {
synchronized (readyListeners) {
this.ready = ready; this.ready = ready;
if (ready) { if (ready) {
@ -133,7 +130,6 @@ public class NettyConnection implements Connection {
} }
} }
} }
}
@Override @Override
public void forceClose() { public void forceClose() {