public class EpollChannelConfig extends DefaultChannelConfig
限定符和类型 | 方法和说明 |
---|---|
protected void |
autoReadCleared()
Is called once
DefaultChannelConfig.setAutoRead(boolean) is called with false and DefaultChannelConfig.isAutoRead() was
true before. |
EpollMode |
getEpollMode()
Return the
EpollMode used. |
<T> T |
getOption(ChannelOption<T> option)
Return the value of the given
ChannelOption |
java.util.Map<ChannelOption<?>,java.lang.Object> |
getOptions()
Return all set
ChannelOption 's. |
EpollChannelConfig |
setAllocator(ByteBufAllocator allocator)
Set the
ByteBufAllocator which is used for the channel
to allocate buffers. |
EpollChannelConfig |
setAutoRead(boolean autoRead)
Sets if
ChannelHandlerContext.read() will be invoked automatically so that a user application doesn't
need to call it at all. |
EpollChannelConfig |
setConnectTimeoutMillis(int connectTimeoutMillis)
Sets the connect timeout of the channel in milliseconds.
|
EpollChannelConfig |
setEpollMode(EpollMode mode)
Set the
EpollMode used. |
EpollChannelConfig |
setMaxMessagesPerRead(int maxMessagesPerRead)
Sets the maximum number of messages to read per read loop.
|
EpollChannelConfig |
setMessageSizeEstimator(MessageSizeEstimator estimator)
Set the
MessageSizeEstimator which is used for the channel
to detect the size of a message. |
<T> boolean |
setOption(ChannelOption<T> option,
T value)
Sets a configuration property with the specified name and value.
|
EpollChannelConfig |
setRecvByteBufAllocator(RecvByteBufAllocator allocator)
Set the
ByteBufAllocator which is used for the channel
to allocate receive buffers. |
EpollChannelConfig |
setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
Sets the high water mark of the write buffer.
|
EpollChannelConfig |
setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
Sets the low water mark of the write buffer.
|
EpollChannelConfig |
setWriteSpinCount(int writeSpinCount)
Sets the maximum loop count for a write operation until
WritableByteChannel.write(ByteBuffer) returns a non-zero value. |
getAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMessageSizeEstimator, getOptions, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteSpinCount, isAutoClose, isAutoRead, setAutoClose, setOptions, validate
public java.util.Map<ChannelOption<?>,java.lang.Object> getOptions()
ChannelConfig
ChannelOption
's.getOptions
在接口中 ChannelConfig
getOptions
在类中 DefaultChannelConfig
public <T> T getOption(ChannelOption<T> option)
ChannelConfig
ChannelOption
getOption
在接口中 ChannelConfig
getOption
在类中 DefaultChannelConfig
public <T> boolean setOption(ChannelOption<T> option, T value)
ChannelConfig
public boolean setOption(ChannelOption<T> option, T value) { if (super.setOption(option, value)) { return true; } if (option.equals(additionalOption)) { .... return true; } return false; }
setOption
在接口中 ChannelConfig
setOption
在类中 DefaultChannelConfig
true
if and only if the property has been setpublic EpollChannelConfig setConnectTimeoutMillis(int connectTimeoutMillis)
ChannelConfig
Channel
does not support connect operation, this property is not
used at all, and therefore will be ignored.setConnectTimeoutMillis
在接口中 ChannelConfig
setConnectTimeoutMillis
在类中 DefaultChannelConfig
connectTimeoutMillis
- the connect timeout in milliseconds.
0
to disable.public EpollChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead)
ChannelConfig
setMaxMessagesPerRead
在接口中 ChannelConfig
setMaxMessagesPerRead
在类中 DefaultChannelConfig
public EpollChannelConfig setWriteSpinCount(int writeSpinCount)
ChannelConfig
WritableByteChannel.write(ByteBuffer)
returns a non-zero value.
It is similar to what a spin lock is used for in concurrency programming.
It improves memory utilization and write throughput depending on
the platform that JVM runs on. The default value is 16
.setWriteSpinCount
在接口中 ChannelConfig
setWriteSpinCount
在类中 DefaultChannelConfig
public EpollChannelConfig setAllocator(ByteBufAllocator allocator)
ChannelConfig
ByteBufAllocator
which is used for the channel
to allocate buffers.setAllocator
在接口中 ChannelConfig
setAllocator
在类中 DefaultChannelConfig
public EpollChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator)
ChannelConfig
ByteBufAllocator
which is used for the channel
to allocate receive buffers.setRecvByteBufAllocator
在接口中 ChannelConfig
setRecvByteBufAllocator
在类中 DefaultChannelConfig
public EpollChannelConfig setAutoRead(boolean autoRead)
ChannelConfig
ChannelHandlerContext.read()
will be invoked automatically so that a user application doesn't
need to call it at all. The default value is true
.setAutoRead
在接口中 ChannelConfig
setAutoRead
在类中 DefaultChannelConfig
public EpollChannelConfig setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
ChannelConfig
Channel.isWritable()
will start to return false
.public EpollChannelConfig setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
ChannelConfig
Channel.isWritable()
will start to return
true
again.public EpollChannelConfig setMessageSizeEstimator(MessageSizeEstimator estimator)
ChannelConfig
MessageSizeEstimator
which is used for the channel
to detect the size of a message.setMessageSizeEstimator
在接口中 ChannelConfig
setMessageSizeEstimator
在类中 DefaultChannelConfig
public EpollMode getEpollMode()
EpollMode
used. Default is
EpollMode.EDGE_TRIGGERED
. If you want to use DefaultChannelConfig.isAutoRead()
false
or
DefaultChannelConfig.getMaxMessagesPerRead()
and have an accurate behaviour you should use
EpollMode.LEVEL_TRIGGERED
.public EpollChannelConfig setEpollMode(EpollMode mode)
EpollMode
used. Default is
EpollMode.EDGE_TRIGGERED
. If you want to use DefaultChannelConfig.isAutoRead()
false
or
DefaultChannelConfig.getMaxMessagesPerRead()
and have an accurate behaviour you should use
EpollMode.LEVEL_TRIGGERED
.
Be aware this config setting can only be adjusted before the channel was registered.protected final void autoReadCleared()
DefaultChannelConfig
DefaultChannelConfig.setAutoRead(boolean)
is called with false
and DefaultChannelConfig.isAutoRead()
was
true
before.autoReadCleared
在类中 DefaultChannelConfig