public final class EpollSocketChannelConfig extends EpollChannelConfig implements SocketChannelConfig
| Modifier and Type | Method and Description |
|---|---|
<T> T |
getOption(ChannelOption<T> option)
返回给定的 ChannelOption的值
|
java.util.Map<ChannelOption<?>,java.lang.Object> |
getOptions()
返回所有设置 ChannelOption的。
|
int |
getReceiveBufferSize()
获取
StandardSocketOptions.SO_RCVBUF选项。
|
int |
getSendBufferSize()
获取
StandardSocketOptions.SO_SNDBUF选项。
|
int |
getSoLinger()
获取
StandardSocketOptions.SO_LINGER选项。
|
int |
getTcpKeepCnt()
获取套接字上的
TCP_KEEPCNT选项。
|
int |
getTcpKeepIdle()
获取套接字上的
TCP_KEEPIDLE选项。
|
int |
getTcpKeepIntvl()
获取套接字上的
TCP_KEEPINTVL选项。
|
long |
getTcpNotSentLowAt()
获取套接字上的
TCP_NOTSENT_LOWAT选项。
|
int |
getTcpUserTimeout()
获取套接字上的
TCP_USER_TIMEOUT选项。
|
int |
getTrafficClass()
获取
StandardSocketOptions.IP_TOS选项。
|
boolean |
isAllowHalfClosure()
返回
true当且仅当该远程对等关闭输出以使连接半闭时,通道不应该关闭。
|
boolean |
isIpTransparent()
|
boolean |
isKeepAlive()
获取
StandardSocketOptions.SO_KEEPALIVE选项。
|
boolean |
isReuseAddress()
获取
StandardSocketOptions.SO_REUSEADDR选项。
|
boolean |
isTcpCork()
获取套接字上的
TCP_CORK选项。
|
boolean |
isTcpFastOpenConnect()
返回
true如果
TCP_FASTOPEN_CONNECT启用,
false其他。
|
boolean |
isTcpNoDelay()
获取
StandardSocketOptions.TCP_NODELAY选项。
|
boolean |
isTcpQuickAck()
|
EpollSocketChannelConfig |
setAllocator(ByteBufAllocator allocator)
设置用于通道分配缓冲区的 ByteBufAllocator 。
|
EpollSocketChannelConfig |
setAllowHalfClosure(boolean allowHalfClosure)
设置当远程对等关闭输出以使连接半关闭时,通道是否应该关闭。
|
EpollSocketChannelConfig |
setAutoClose(boolean autoClose) |
EpollSocketChannelConfig |
setAutoRead(boolean autoRead)
设置是否自动调用
ChannelHandlerContext.read(),以便用户应用程序根本不需要调用它。
|
EpollSocketChannelConfig |
setConnectTimeoutMillis(int connectTimeoutMillis)
以毫秒为单位设置通道的连接超时。
|
EpollSocketChannelConfig |
setEpollMode(EpollMode mode)
设置使用的 EpollMode 。
|
EpollSocketChannelConfig |
setIpTransparent(boolean transparent)
|
EpollSocketChannelConfig |
setKeepAlive(boolean keepAlive)
设置
StandardSocketOptions.SO_KEEPALIVE选项。
|
EpollSocketChannelConfig |
setMaxMessagesPerRead(int maxMessagesPerRead)
已过时。
|
EpollSocketChannelConfig |
setMessageSizeEstimator(MessageSizeEstimator estimator)
设置用于通道的 MessageSizeEstimator以检测消息的大小。
|
<T> boolean |
setOption(ChannelOption<T> option, T value)
使用指定的名称和值设置配置属性。
|
EpollSocketChannelConfig |
setPerformancePreferences(int connectionTime, int latency, int bandwidth)
设置
Socket.setPerformancePreferences(int, int, int)指定的性能首选项。
|
EpollSocketChannelConfig |
setReceiveBufferSize(int receiveBufferSize)
设置
StandardSocketOptions.SO_RCVBUF选项。
|
EpollSocketChannelConfig |
setRecvByteBufAllocator(RecvByteBufAllocator allocator)
设置用于通道的 RecvByteBufAllocator以分配接收缓冲区。
|
EpollSocketChannelConfig |
setReuseAddress(boolean reuseAddress)
设置
StandardSocketOptions.SO_REUSEADDR选项。
|
EpollSocketChannelConfig |
setSendBufferSize(int sendBufferSize)
设置
StandardSocketOptions.SO_SNDBUF选项。
|
EpollSocketChannelConfig |
setSoLinger(int soLinger)
设置
StandardSocketOptions.SO_LINGER选项。
|
EpollSocketChannelConfig |
setTcpCork(boolean tcpCork)
在套接字上设置
TCP_CORK选项。
|
EpollSocketChannelConfig |
setTcpFastOpenConnect(boolean fastOpenConnect)
在插座上设置
TCP_FASTOPEN_CONNECT选项。
|
EpollSocketChannelConfig |
setTcpKeepCnt(int probes)
在套接字上设置
TCP_KEEPCNT选项。
|
EpollSocketChannelConfig |
setTcpKeepCntl(int probes)
已过时。
|
EpollSocketChannelConfig |
setTcpKeepIdle(int seconds)
在套接字上设置
TCP_KEEPIDLE选项。
|
EpollSocketChannelConfig |
setTcpKeepIntvl(int seconds)
在套接字上设置
TCP_KEEPINTVL选项。
|
EpollSocketChannelConfig |
setTcpMd5Sig(java.util.Map<java.net.InetAddress,byte[]> keys)
在套接字上设置
TCP_MD5SIG选项。
|
EpollSocketChannelConfig |
setTcpNoDelay(boolean tcpNoDelay)
设置
StandardSocketOptions.TCP_NODELAY选项。
|
EpollSocketChannelConfig |
setTcpNotSentLowAt(long tcpNotSentLowAt)
在套接字上设置
TCP_NOTSENT_LOWAT选项。
|
EpollSocketChannelConfig |
setTcpQuickAck(boolean quickAck)
在套接字上设置
TCP_QUICKACK选项。
|
EpollSocketChannelConfig |
setTcpUserTimeout(int milliseconds)
在套接字上设置
TCP_USER_TIMEOUT选项。
|
EpollSocketChannelConfig |
setTrafficClass(int trafficClass)
设置
StandardSocketOptions.IP_TOS选项。
|
EpollSocketChannelConfig |
setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
已过时。
|
EpollSocketChannelConfig |
setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
已过时。
|
EpollSocketChannelConfig |
setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)
设置用于设置写入缓冲区的高位和低位水印的 WriteBufferWaterMark 。
|
EpollSocketChannelConfig |
setWriteSpinCount(int writeSpinCount)
设置写入操作的最大循环计数,直到
WritableByteChannel.write(ByteBuffer)返回非零值。
|
autoReadCleared, getEpollModegetAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMessageSizeEstimator, getOptions, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteBufferWaterMark, getWriteSpinCount, isAutoClose, isAutoRead, setOptions, validateclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitgetAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMessageSizeEstimator, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteBufferWaterMark, getWriteSpinCount, isAutoClose, isAutoRead, setOptionspublic java.util.Map<ChannelOption<?>,java.lang.Object> getOptions()
ChannelConfig复制的描述
ChannelOption的。
getOptions接口
ChannelConfig
getOptions的
EpollChannelConfig
public <T> T getOption(ChannelOption<T> option)
ChannelConfig
ChannelOption的值
getOption的
ChannelConfig
getOption在类
EpollChannelConfig
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类
EpollChannelConfig
true当且仅当该属性已设置
public int getReceiveBufferSize()
SocketChannelConfig
StandardSocketOptions.SO_RCVBUF选项。
getReceiveBufferSize在界面
SocketChannelConfig
public int getSendBufferSize()
SocketChannelConfig
StandardSocketOptions.SO_SNDBUF选项。
getSendBufferSize中的
SocketChannelConfig
public int getSoLinger()
SocketChannelConfig复制的描述
StandardSocketOptions.SO_LINGER选项。
getSoLinger接口
SocketChannelConfig
public int getTrafficClass()
SocketChannelConfig复制的描述
StandardSocketOptions.IP_TOS选项。
getTrafficClass ,界面
SocketChannelConfig
public boolean isKeepAlive()
SocketChannelConfig
StandardSocketOptions.SO_KEEPALIVE选项。
isKeepAlive在界面
SocketChannelConfig
public boolean isReuseAddress()
SocketChannelConfig
StandardSocketOptions.SO_REUSEADDR选项。
isReuseAddress在界面
SocketChannelConfig
public boolean isTcpNoDelay()
SocketChannelConfig复制的描述
StandardSocketOptions.TCP_NODELAY选项。
请注意,该选项的默认值是true与操作系统默认值( false )不同。
但是,对于一些有问题的平台,如Android,在Nagle算法禁用的情况下显示不稳定的行为,默认值仍然为false 。
isTcpNoDelay中的
SocketChannelConfig
public boolean isTcpCork()
TCP_CORK选项。
有关更多详细信息,请参阅man 7 tcp 。
public long getTcpNotSentLowAt()
TCP_NOTSENT_LOWAT选项。
有关更多详细信息,请参阅man 7 tcp 。
public int getTcpKeepIdle()
TCP_KEEPIDLE选项。
有关更多详细信息,请参阅man 7 tcp 。
public int getTcpKeepIntvl()
TCP_KEEPINTVL选项。
有关更多详细信息,请参阅man 7 tcp 。
public int getTcpKeepCnt()
TCP_KEEPCNT选项。
有关更多详细信息,请参阅man 7 tcp 。
public int getTcpUserTimeout()
TCP_USER_TIMEOUT选项。
有关更多详细信息,请参阅man 7 tcp 。
public EpollSocketChannelConfig setKeepAlive(boolean keepAlive)
SocketChannelConfig复制的描述
StandardSocketOptions.SO_KEEPALIVE选项。
setKeepAlive接口
SocketChannelConfig
public EpollSocketChannelConfig setPerformancePreferences(int connectionTime, int latency, int bandwidth)
SocketChannelConfig复制的描述
Socket.setPerformancePreferences(int, int, int)指定的性能首选项。
setPerformancePreferences在界面
SocketChannelConfig
public EpollSocketChannelConfig setReceiveBufferSize(int receiveBufferSize)
SocketChannelConfig复制的描述
StandardSocketOptions.SO_RCVBUF选项。
setReceiveBufferSize接口
SocketChannelConfig
public EpollSocketChannelConfig setReuseAddress(boolean reuseAddress)
SocketChannelConfig
StandardSocketOptions.SO_REUSEADDR选项。
setReuseAddress接口
SocketChannelConfig
public EpollSocketChannelConfig setSendBufferSize(int sendBufferSize)
SocketChannelConfig复制的描述
StandardSocketOptions.SO_SNDBUF选项。
setSendBufferSize在界面
SocketChannelConfig
public EpollSocketChannelConfig setSoLinger(int soLinger)
SocketChannelConfig复制的描述
StandardSocketOptions.SO_LINGER选项。
setSoLinger接口
SocketChannelConfig
public EpollSocketChannelConfig setTcpNoDelay(boolean tcpNoDelay)
SocketChannelConfig复制的描述
StandardSocketOptions.TCP_NODELAY选项。
请注意,这个选项的默认值是true不同于操作系统默认( false )。
但是,对于一些有问题的平台,例如Android,在Nagle算法禁用的情况下显示不稳定的行为,默认值仍为false 。
setTcpNoDelay在界面
SocketChannelConfig
public EpollSocketChannelConfig setTcpCork(boolean tcpCork)
TCP_CORK选项。
有关更多详细信息,请参阅man 7 tcp 。
public EpollSocketChannelConfig setTcpNotSentLowAt(long tcpNotSentLowAt)
TCP_NOTSENT_LOWAT选项。
有关更多详细信息,请参阅man 7 tcp 。
tcpNotSentLowAt - 是一个uint32_t
public EpollSocketChannelConfig setTrafficClass(int trafficClass)
SocketChannelConfig
StandardSocketOptions.IP_TOS选项。
setTrafficClass ,界面
SocketChannelConfig
public EpollSocketChannelConfig setTcpKeepIdle(int seconds)
TCP_KEEPIDLE选项。
有关更多详细信息,请参阅man 7 tcp 。
public EpollSocketChannelConfig setTcpKeepIntvl(int seconds)
TCP_KEEPINTVL选项。
有关更多详细信息,请参阅man 7 tcp 。
@Deprecated public EpollSocketChannelConfig setTcpKeepCntl(int probes)
setTcpKeepCnt(int)
public EpollSocketChannelConfig setTcpKeepCnt(int probes)
TCP_KEEPCNT选项。
有关更多详细信息,请参阅man 7 tcp 。
public EpollSocketChannelConfig setTcpUserTimeout(int milliseconds)
TCP_USER_TIMEOUT选项。
有关更多详细信息,请参阅man 7 tcp 。
public boolean isIpTransparent()
public EpollSocketChannelConfig setIpTransparent(boolean transparent)
true使用IP_TRANSPARENT启用, false为禁用它。
默认是禁用的。
public EpollSocketChannelConfig setTcpMd5Sig(java.util.Map<java.net.InetAddress,byte[]> keys)
TCP_MD5SIG选项。
有关更多详细信息,请参阅linux/tcp.h 。
钥匙只能设置,不能读取以防止潜在的泄漏,因为它们是保密的。
允许他们阅读将意味着任何有权访问该频道的人都可以获得他们。
public EpollSocketChannelConfig setTcpQuickAck(boolean quickAck)
TCP_QUICKACK选项。
有关更多详细信息,请参阅TCP_QUICKACK 。
public boolean isTcpQuickAck()
public EpollSocketChannelConfig setTcpFastOpenConnect(boolean fastOpenConnect)
public boolean isTcpFastOpenConnect()
true如果
TCP_FASTOPEN_CONNECT启用,
false其他。
public boolean isAllowHalfClosure()
SocketChannelConfig
true当且仅当其远程对等关闭输出以使连接半关闭时,通道不应该关闭。
如果false ,当远程对等关闭输出时,连接会自动关闭。
isAllowHalfClosure在界面
SocketChannelConfig
public EpollSocketChannelConfig setAllowHalfClosure(boolean allowHalfClosure)
SocketChannelConfig
true远程对等关闭输出,则连接未关闭。
相反, ChannelInboundHandler.userEventTriggered(ChannelHandlerContext, Object)调用一个ChannelInputShutdownEvent对象。
如果false ,连接会自动关闭。
setAllowHalfClosure接口
SocketChannelConfig
public EpollSocketChannelConfig setConnectTimeoutMillis(int connectTimeoutMillis)
ChannelConfig
Channel不支持连接操作,则完全不使用此属性,因此将被忽略。
setConnectTimeoutMillis ,界面
ChannelConfig
setConnectTimeoutMillis接口
SocketChannelConfig
setConnectTimeoutMillis在类
EpollChannelConfig
connectTimeoutMillis - 以毫秒为单位的连接超时。
0禁用。
@Deprecated public EpollSocketChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead)
DefaultChannelConfig
setMaxMessagesPerRead ,界面
ChannelConfig
setMaxMessagesPerRead接口
SocketChannelConfig
setMaxMessagesPerRead在课堂
EpollChannelConfig
public EpollSocketChannelConfig setWriteSpinCount(int writeSpinCount)
ChannelConfig
WritableByteChannel.write(ByteBuffer)返回非零值。
它类似于在并发编程中使用自旋锁。
它可以提高内存利用率并根据运行JVM的平台来编写吞吐量。
默认值是16 。
setWriteSpinCount在界面
ChannelConfig
setWriteSpinCount接口
SocketChannelConfig
setWriteSpinCount在课堂
EpollChannelConfig
public EpollSocketChannelConfig setAllocator(ByteBufAllocator allocator)
ChannelConfig
ByteBufAllocator 。
setAllocator ,界面
ChannelConfig
setAllocator接口
SocketChannelConfig
setAllocator在类
EpollChannelConfig
public EpollSocketChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator)
ChannelConfig
RecvByteBufAllocator 。
setRecvByteBufAllocator接口
ChannelConfig
setRecvByteBufAllocator接口
SocketChannelConfig
setRecvByteBufAllocator在类
EpollChannelConfig
public EpollSocketChannelConfig setAutoRead(boolean autoRead)
ChannelConfig复制的描述
ChannelHandlerContext.read(),以便用户应用程序根本不需要调用它。
默认值是true 。
setAutoRead在界面
ChannelConfig
setAutoRead在界面
SocketChannelConfig
setAutoRead在课堂上
EpollChannelConfig
public EpollSocketChannelConfig setAutoClose(boolean autoClose)
setAutoClose接口
ChannelConfig
setAutoClose接口
SocketChannelConfig
setAutoClose在课堂上
DefaultChannelConfig
@Deprecated public EpollSocketChannelConfig setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
ChannelConfig
设置写入缓冲区的高位标记。 如果写入缓冲区中排队的字节数超过此值,则Channel.isWritable()将开始返回false 。
setWriteBufferHighWaterMark在界面
ChannelConfig
setWriteBufferHighWaterMark在课堂上
EpollChannelConfig
@Deprecated public EpollSocketChannelConfig setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
ChannelConfig
设置写入缓冲区的低水位标志。 一旦写入缓冲区中排队的字节数超过了high water mark ,然后下降到此值以下, Channel.isWritable()将再次开始返回true 。
setWriteBufferLowWaterMark在界面
ChannelConfig
setWriteBufferLowWaterMark的
EpollChannelConfig
public EpollSocketChannelConfig setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)
ChannelConfig复制的描述
WriteBufferWaterMark 。
setWriteBufferWaterMark ,界面
ChannelConfig
setWriteBufferWaterMark接口
SocketChannelConfig
setWriteBufferWaterMark在课堂上
EpollChannelConfig
public EpollSocketChannelConfig setMessageSizeEstimator(MessageSizeEstimator estimator)
ChannelConfig复制的描述
MessageSizeEstimator以检测消息的大小。
setMessageSizeEstimator在界面
ChannelConfig
setMessageSizeEstimator接口
SocketChannelConfig
setMessageSizeEstimator在课堂上
EpollChannelConfig
public EpollSocketChannelConfig setEpollMode(EpollMode mode)
EpollChannelConfig
EpollMode 。
默认是EpollMode.EDGE_TRIGGERED 。
如果您想使用DefaultChannelConfig.isAutoRead() false或DefaultChannelConfig.getMaxMessagesPerRead()并且具有准确的行为,则应使用EpollMode.LEVEL_TRIGGERED 。
请注意,只有在频道注册之前,才能调整此配置设置。
Copyright © 2008–2018 The Netty Project. All rights reserved.