public final class EpollServerSocketChannelConfig extends EpollServerChannelConfig implements ServerSocketChannelConfig
channel| 限定符和类型 | 方法和说明 |
|---|---|
<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. |
int |
getTcpDeferAccept()
Returns a positive value if TCP_DEFER_ACCEPT is enabled.
|
boolean |
isFreeBind()
|
boolean |
isIpTransparent()
|
boolean |
isReusePort()
Returns
true if the SO_REUSEPORT option is set. |
EpollServerSocketChannelConfig |
setAllocator(ByteBufAllocator allocator)
Set the
ByteBufAllocator which is used for the channel
to allocate buffers. |
EpollServerSocketChannelConfig |
setAutoRead(boolean autoRead)
Sets if
ChannelHandlerContext.read() will be invoked automatically so that a user application doesn't
need to call it at all. |
EpollServerSocketChannelConfig |
setBacklog(int backlog)
Sets the backlog value to specify when the channel binds to a local
address.
|
EpollServerSocketChannelConfig |
setConnectTimeoutMillis(int connectTimeoutMillis)
Sets the connect timeout of the channel in milliseconds.
|
EpollServerSocketChannelConfig |
setFreeBind(boolean freeBind)
|
EpollServerSocketChannelConfig |
setIpTransparent(boolean transparent)
|
EpollServerSocketChannelConfig |
setMaxMessagesPerRead(int maxMessagesPerRead)
已过时。
|
EpollServerSocketChannelConfig |
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.
|
EpollServerSocketChannelConfig |
setPerformancePreferences(int connectionTime,
int latency,
int bandwidth)
Sets the performance preferences as specified in
ServerSocket.setPerformancePreferences(int, int, int). |
EpollServerSocketChannelConfig |
setReceiveBufferSize(int receiveBufferSize)
Gets the
StandardSocketOptions.SO_SNDBUF option. |
EpollServerSocketChannelConfig |
setRecvByteBufAllocator(RecvByteBufAllocator allocator)
Set the
RecvByteBufAllocator which is used for the channel to allocate receive buffers. |
EpollServerSocketChannelConfig |
setReuseAddress(boolean reuseAddress)
Sets the
StandardSocketOptions.SO_REUSEADDR option. |
EpollServerSocketChannelConfig |
setReusePort(boolean reusePort)
Set the SO_REUSEPORT option on the underlying Channel.
|
EpollServerSocketChannelConfig |
setTcpDeferAccept(int deferAccept)
Set the
TCP_DEFER_ACCEPT option on the socket. |
EpollServerSocketChannelConfig |
setTcpMd5Sig(java.util.Map<java.net.InetAddress,byte[]> keys)
Set the
TCP_MD5SIG option on the socket. |
EpollServerSocketChannelConfig |
setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
已过时。
|
EpollServerSocketChannelConfig |
setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
已过时。
|
EpollServerSocketChannelConfig |
setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)
Set the
WriteBufferWaterMark which is used for setting the high and low
water mark of the write buffer. |
EpollServerSocketChannelConfig |
setWriteSpinCount(int writeSpinCount)
Sets the maximum loop count for a write operation until
WritableByteChannel.write(ByteBuffer) returns a non-zero value. |
getBacklog, getReceiveBufferSize, getTcpFastopen, isReuseAddress, setEpollMode, setTcpFastopenautoReadCleared, getEpollMode, getMaxBytesPerGatheringWrite, setMaxBytesPerGatheringWrite, socketgetAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMaxMessagesPerWrite, getMessageSizeEstimator, getOptions, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteBufferWaterMark, getWriteSpinCount, isAutoClose, isAutoRead, setAutoClose, setMaxMessagesPerWrite, setOptions, validateclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetBacklog, getReceiveBufferSize, isReuseAddressgetAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMessageSizeEstimator, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteBufferWaterMark, getWriteSpinCount, isAutoClose, isAutoRead, setAutoClose, setOptionspublic java.util.Map<ChannelOption<?>,java.lang.Object> getOptions()
ChannelConfigChannelOption's.getOptions 在接口中 ChannelConfiggetOptions 在类中 EpollServerChannelConfigpublic <T> T getOption(ChannelOption<T> option)
ChannelConfigChannelOptiongetOption 在接口中 ChannelConfiggetOption 在类中 EpollServerChannelConfigpublic <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 在接口中 ChannelConfigsetOption 在类中 EpollServerChannelConfigtrue if and only if the property has been setpublic EpollServerSocketChannelConfig setReuseAddress(boolean reuseAddress)
ServerSocketChannelConfigStandardSocketOptions.SO_REUSEADDR option.setReuseAddress 在接口中 ServerSocketChannelConfigsetReuseAddress 在类中 EpollServerChannelConfigpublic EpollServerSocketChannelConfig setReceiveBufferSize(int receiveBufferSize)
ServerSocketChannelConfigStandardSocketOptions.SO_SNDBUF option.public EpollServerSocketChannelConfig setPerformancePreferences(int connectionTime, int latency, int bandwidth)
ServerSocketChannelConfigServerSocket.setPerformancePreferences(int, int, int).public EpollServerSocketChannelConfig setBacklog(int backlog)
ServerSocketChannelConfigsetBacklog 在接口中 ServerSocketChannelConfigsetBacklog 在类中 EpollServerChannelConfigpublic EpollServerSocketChannelConfig setConnectTimeoutMillis(int connectTimeoutMillis)
ChannelConfigChannel does not support connect operation, this property is not
used at all, and therefore will be ignored.setConnectTimeoutMillis 在接口中 ChannelConfigsetConnectTimeoutMillis 在接口中 ServerSocketChannelConfigsetConnectTimeoutMillis 在类中 EpollServerChannelConfigconnectTimeoutMillis - the connect timeout in milliseconds.
0 to disable.@Deprecated public EpollServerSocketChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead)
DefaultChannelConfigsetMaxMessagesPerRead 在接口中 ChannelConfigsetMaxMessagesPerRead 在接口中 ServerSocketChannelConfigsetMaxMessagesPerRead 在类中 EpollServerChannelConfigpublic EpollServerSocketChannelConfig setWriteSpinCount(int writeSpinCount)
ChannelConfigWritableByteChannel.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 在接口中 ChannelConfigsetWriteSpinCount 在接口中 ServerSocketChannelConfigsetWriteSpinCount 在类中 EpollServerChannelConfigpublic EpollServerSocketChannelConfig setAllocator(ByteBufAllocator allocator)
ChannelConfigByteBufAllocator which is used for the channel
to allocate buffers.setAllocator 在接口中 ChannelConfigsetAllocator 在接口中 ServerSocketChannelConfigsetAllocator 在类中 EpollServerChannelConfigpublic EpollServerSocketChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator)
ChannelConfigRecvByteBufAllocator which is used for the channel to allocate receive buffers.setRecvByteBufAllocator 在接口中 ChannelConfigsetRecvByteBufAllocator 在接口中 ServerSocketChannelConfigsetRecvByteBufAllocator 在类中 EpollServerChannelConfigpublic EpollServerSocketChannelConfig setAutoRead(boolean autoRead)
ChannelConfigChannelHandlerContext.read() will be invoked automatically so that a user application doesn't
need to call it at all. The default value is true.setAutoRead 在接口中 ChannelConfigsetAutoRead 在接口中 ServerSocketChannelConfigsetAutoRead 在类中 EpollServerChannelConfig@Deprecated public EpollServerSocketChannelConfig setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
ChannelConfig
Sets the high water mark of the write buffer. If the number of bytes
queued in the write buffer exceeds this value, Channel.isWritable()
will start to return false.
@Deprecated public EpollServerSocketChannelConfig setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
ChannelConfig
Sets the low water mark of the write buffer. Once the number of bytes
queued in the write buffer exceeded the
high water mark and then
dropped down below this value, Channel.isWritable() will start to return
true again.
public EpollServerSocketChannelConfig setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)
ChannelConfigWriteBufferWaterMark which is used for setting the high and low
water mark of the write buffer.setWriteBufferWaterMark 在接口中 ChannelConfigsetWriteBufferWaterMark 在接口中 ServerSocketChannelConfigsetWriteBufferWaterMark 在类中 EpollServerChannelConfigpublic EpollServerSocketChannelConfig setMessageSizeEstimator(MessageSizeEstimator estimator)
ChannelConfigMessageSizeEstimator which is used for the channel
to detect the size of a message.setMessageSizeEstimator 在接口中 ChannelConfigsetMessageSizeEstimator 在接口中 ServerSocketChannelConfigsetMessageSizeEstimator 在类中 EpollServerChannelConfigpublic EpollServerSocketChannelConfig setTcpMd5Sig(java.util.Map<java.net.InetAddress,byte[]> keys)
TCP_MD5SIG option on the socket. See linux/tcp.h for more details.
Keys can only be set on, not read to prevent a potential leak, as they are confidential.
Allowing them being read would mean anyone with access to the channel could get them.public boolean isReusePort()
true if the SO_REUSEPORT option is set.public EpollServerSocketChannelConfig setReusePort(boolean reusePort)
EpollSocketChannels to the same port and so accept connections with multiple threads.
Be aware this method needs be called before AbstractChannel.bind(java.net.SocketAddress) to have
any affect.public boolean isFreeBind()
public EpollServerSocketChannelConfig setFreeBind(boolean freeBind)
public boolean isIpTransparent()
public EpollServerSocketChannelConfig setIpTransparent(boolean transparent)
public EpollServerSocketChannelConfig setTcpDeferAccept(int deferAccept)
TCP_DEFER_ACCEPT option on the socket. See man 7 tcp for more details.public int getTcpDeferAccept()