Remove some casting. See #186
This commit is contained in:
parent
5557137dc0
commit
eafd8343eb
@ -145,6 +145,9 @@ abstract class AbstractNioChannel<C extends SelectableChannel & WritableByteChan
|
|||||||
return remoteAddress;
|
return remoteAddress;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public abstract NioChannelConfig getConfig();
|
||||||
|
|
||||||
int getRawInterestOps() {
|
int getRawInterestOps() {
|
||||||
return super.getInterestOps();
|
return super.getInterestOps();
|
||||||
}
|
}
|
||||||
@ -172,14 +175,14 @@ abstract class AbstractNioChannel<C extends SelectableChannel & WritableByteChan
|
|||||||
int writeBufferSize = this.writeBufferSize.get();
|
int writeBufferSize = this.writeBufferSize.get();
|
||||||
if (writeBufferSize != 0) {
|
if (writeBufferSize != 0) {
|
||||||
if (highWaterMarkCounter.get() > 0) {
|
if (highWaterMarkCounter.get() > 0) {
|
||||||
int lowWaterMark = ((NioChannelConfig) getConfig()).getWriteBufferLowWaterMark();
|
int lowWaterMark = getConfig().getWriteBufferLowWaterMark();
|
||||||
if (writeBufferSize >= lowWaterMark) {
|
if (writeBufferSize >= lowWaterMark) {
|
||||||
interestOps |= Channel.OP_WRITE;
|
interestOps |= Channel.OP_WRITE;
|
||||||
} else {
|
} else {
|
||||||
interestOps &= ~Channel.OP_WRITE;
|
interestOps &= ~Channel.OP_WRITE;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
int highWaterMark = ((NioChannelConfig) getConfig()).getWriteBufferHighWaterMark();
|
int highWaterMark = getConfig().getWriteBufferHighWaterMark();
|
||||||
if (writeBufferSize >= highWaterMark) {
|
if (writeBufferSize >= highWaterMark) {
|
||||||
interestOps |= Channel.OP_WRITE;
|
interestOps |= Channel.OP_WRITE;
|
||||||
} else {
|
} else {
|
||||||
@ -333,7 +336,7 @@ abstract class AbstractNioChannel<C extends SelectableChannel & WritableByteChan
|
|||||||
|
|
||||||
int messageSize = getMessageSize(e);
|
int messageSize = getMessageSize(e);
|
||||||
int newWriteBufferSize = writeBufferSize.addAndGet(messageSize);
|
int newWriteBufferSize = writeBufferSize.addAndGet(messageSize);
|
||||||
int highWaterMark = ((NioChannelConfig) getConfig()).getWriteBufferHighWaterMark();
|
int highWaterMark = getConfig().getWriteBufferHighWaterMark();
|
||||||
|
|
||||||
if (newWriteBufferSize >= highWaterMark) {
|
if (newWriteBufferSize >= highWaterMark) {
|
||||||
if (newWriteBufferSize - messageSize < highWaterMark) {
|
if (newWriteBufferSize - messageSize < highWaterMark) {
|
||||||
@ -354,7 +357,7 @@ abstract class AbstractNioChannel<C extends SelectableChannel & WritableByteChan
|
|||||||
if (e != null) {
|
if (e != null) {
|
||||||
int messageSize = getMessageSize(e);
|
int messageSize = getMessageSize(e);
|
||||||
int newWriteBufferSize = writeBufferSize.addAndGet(-messageSize);
|
int newWriteBufferSize = writeBufferSize.addAndGet(-messageSize);
|
||||||
int lowWaterMark = ((NioChannelConfig) getConfig()).getWriteBufferLowWaterMark();
|
int lowWaterMark = getConfig().getWriteBufferLowWaterMark();
|
||||||
|
|
||||||
if (newWriteBufferSize == 0 || newWriteBufferSize < lowWaterMark) {
|
if (newWriteBufferSize == 0 || newWriteBufferSize < lowWaterMark) {
|
||||||
if (newWriteBufferSize + messageSize >= lowWaterMark) {
|
if (newWriteBufferSize + messageSize >= lowWaterMark) {
|
||||||
|
@ -380,7 +380,7 @@ abstract class AbstractNioWorker implements Runnable {
|
|||||||
final SocketSendBufferPool sendBufferPool = this.sendBufferPool;
|
final SocketSendBufferPool sendBufferPool = this.sendBufferPool;
|
||||||
final WritableByteChannel ch = channel.channel;
|
final WritableByteChannel ch = channel.channel;
|
||||||
final Queue<MessageEvent> writeBuffer = channel.writeBufferQueue;
|
final Queue<MessageEvent> writeBuffer = channel.writeBufferQueue;
|
||||||
final int writeSpinCount = ((NioChannelConfig) channel.getConfig()).getWriteSpinCount();
|
final int writeSpinCount = channel.getConfig().getWriteSpinCount();
|
||||||
synchronized (channel.writeLock) {
|
synchronized (channel.writeLock) {
|
||||||
channel.inWriteNowLoop = true;
|
channel.inWriteNowLoop = true;
|
||||||
for (;;) {
|
for (;;) {
|
||||||
|
Loading…
Reference in New Issue
Block a user