public class EpollServerChannelConfig extends EpollChannelConfig implements ServerSocketChannelConfig
Modifier and Type | Field and Description |
---|---|
protected io.netty.channel.epoll.AbstractEpollChannel |
channel |
Modifier and Type | Method and Description |
---|---|
int |
getBacklog()
获取积压值以指定通道绑定到本地地址的时间。
|
<T> T |
getOption(ChannelOption<T> option)
返回给定 ChannelOption 的值
|
java.util.Map<ChannelOption<?>,java.lang.Object> |
getOptions()
返回所有设置 ChannelOption 的。
|
int |
getReceiveBufferSize()
获取
StandardSocketOptions.SO_RCVBUF 选项。
|
int |
getTcpFastopen()
返回快速打开连接的暂挂数量阈值。
|
boolean |
isReuseAddress()
获取
StandardSocketOptions.SO_REUSEADDR 选项。
|
EpollServerChannelConfig |
setAllocator(ByteBufAllocator allocator)
设置用于通道分配缓冲区的 ByteBufAllocator 。
|
EpollServerChannelConfig |
setAutoRead(boolean autoRead)
设置是否自动调用
ChannelHandlerContext.read() ,以便用户应用程序根本不需要调用它。
|
EpollServerChannelConfig |
setBacklog(int backlog)
设置积压值以指定通道绑定到本地地址的时间。
|
EpollServerChannelConfig |
setConnectTimeoutMillis(int connectTimeoutMillis)
以毫秒为单位设置通道的连接超时。
|
EpollServerChannelConfig |
setEpollMode(EpollMode mode)
设置使用的 EpollMode 。
|
EpollServerChannelConfig |
setMaxMessagesPerRead(int maxMessagesPerRead)
已过时。
|
EpollServerChannelConfig |
setMessageSizeEstimator(MessageSizeEstimator estimator)
设置用于通道的 MessageSizeEstimator 以检测消息的大小。
|
<T> boolean |
setOption(ChannelOption<T> option, T value)
使用指定的名称和值设置配置属性。
|
EpollServerChannelConfig |
setPerformancePreferences(int connectionTime, int latency, int bandwidth)
设置
ServerSocket.setPerformancePreferences(int, int, int) 指定的性能首选项。
|
EpollServerChannelConfig |
setReceiveBufferSize(int receiveBufferSize)
获取
StandardSocketOptions.SO_SNDBUF 选项。
|
EpollServerChannelConfig |
setRecvByteBufAllocator(RecvByteBufAllocator allocator)
设置用于通道分配接收缓冲区的 RecvByteBufAllocator 。
|
EpollServerChannelConfig |
setReuseAddress(boolean reuseAddress)
设置
StandardSocketOptions.SO_REUSEADDR 选项。
|
EpollServerChannelConfig |
setTcpFastopen(int pendingFastOpenRequestsThreshold)
在服务器通道上启用tcpFastOpen。
|
EpollServerChannelConfig |
setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
已过时。
|
EpollServerChannelConfig |
setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
已过时。
|
EpollServerChannelConfig |
setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)
设置 WriteBufferWaterMark 用于设置写入缓冲区的高位和低位。
|
EpollServerChannelConfig |
setWriteSpinCount(int writeSpinCount)
设置写入操作的最大循环计数,直到
WritableByteChannel.write(ByteBuffer) 返回非零值。
|
autoReadCleared, getEpollMode
getAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMessageSizeEstimator, getOptions, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteBufferWaterMark, getWriteSpinCount, isAutoClose, isAutoRead, setAutoClose, setOptions, validate
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMessageSizeEstimator, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteBufferWaterMark, getWriteSpinCount, isAutoClose, isAutoRead, setAutoClose, setOptions
public 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 boolean isReuseAddress()
ServerSocketChannelConfig
StandardSocketOptions.SO_REUSEADDR
选项。
isReuseAddress
,界面
ServerSocketChannelConfig
public EpollServerChannelConfig setReuseAddress(boolean reuseAddress)
ServerSocketChannelConfig
StandardSocketOptions.SO_REUSEADDR
选项。
setReuseAddress
在界面
ServerSocketChannelConfig
public int getReceiveBufferSize()
ServerSocketChannelConfig
StandardSocketOptions.SO_RCVBUF
选项。
getReceiveBufferSize
在界面
ServerSocketChannelConfig
public EpollServerChannelConfig setReceiveBufferSize(int receiveBufferSize)
ServerSocketChannelConfig
StandardSocketOptions.SO_SNDBUF
选项。
setReceiveBufferSize
,界面
ServerSocketChannelConfig
public int getBacklog()
ServerSocketChannelConfig
getBacklog
在界面
ServerSocketChannelConfig
public EpollServerChannelConfig setBacklog(int backlog)
ServerSocketChannelConfig
setBacklog
,界面
ServerSocketChannelConfig
public int getTcpFastopen()
public EpollServerChannelConfig setTcpFastopen(int pendingFastOpenRequestsThreshold)
pendingFastOpenRequestsThreshold
- 在特定时间点为了安全而快速打开的请求数量。
@see RFC 7413 Passive Open
public EpollServerChannelConfig setPerformancePreferences(int connectionTime, int latency, int bandwidth)
ServerSocketChannelConfig
ServerSocket.setPerformancePreferences(int, int, int)
指定的性能首选项。
setPerformancePreferences
在界面
ServerSocketChannelConfig
public EpollServerChannelConfig setConnectTimeoutMillis(int connectTimeoutMillis)
ChannelConfig
Channel
不支持连接操作,则完全不使用此属性,因此将被忽略。
setConnectTimeoutMillis
在界面
ChannelConfig
setConnectTimeoutMillis
,界面
ServerSocketChannelConfig
setConnectTimeoutMillis
在课堂
EpollChannelConfig
connectTimeoutMillis
- 以毫秒为单位的连接超时。
0
禁用。
@Deprecated public EpollServerChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead)
DefaultChannelConfig
setMaxMessagesPerRead
,界面
ChannelConfig
setMaxMessagesPerRead
,界面
ServerSocketChannelConfig
setMaxMessagesPerRead
在课堂上
EpollChannelConfig
public EpollServerChannelConfig setWriteSpinCount(int writeSpinCount)
ChannelConfig
WritableByteChannel.write(ByteBuffer)
返回非零值。
它类似于在并发编程中使用自旋锁。
它可以提高内存利用率并根据运行JVM的平台来编写吞吐量。
默认值是16
。
setWriteSpinCount
在界面
ChannelConfig
setWriteSpinCount
在界面
ServerSocketChannelConfig
setWriteSpinCount
在课堂上
EpollChannelConfig
public EpollServerChannelConfig setAllocator(ByteBufAllocator allocator)
ChannelConfig
ByteBufAllocator
。
setAllocator
,界面
ChannelConfig
setAllocator
在界面
ServerSocketChannelConfig
setAllocator
在课程
EpollChannelConfig
public EpollServerChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator)
ChannelConfig
RecvByteBufAllocator
。
setRecvByteBufAllocator
,界面
ChannelConfig
setRecvByteBufAllocator
在界面
ServerSocketChannelConfig
setRecvByteBufAllocator
在课程
EpollChannelConfig
public EpollServerChannelConfig setAutoRead(boolean autoRead)
ChannelConfig
ChannelHandlerContext.read()
,以便用户应用程序根本不需要调用它。
默认值是true
。
setAutoRead
,界面
ChannelConfig
setAutoRead
在界面
ServerSocketChannelConfig
setAutoRead
在课程
EpollChannelConfig
@Deprecated public EpollServerChannelConfig setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
ChannelConfig
设置写入缓冲区的高位标记。 如果写入缓冲区中排队的字节数超过此值,则Channel.isWritable()
将开始返回false
。
setWriteBufferHighWaterMark
在界面
ChannelConfig
setWriteBufferHighWaterMark
在界面
ServerSocketChannelConfig
setWriteBufferHighWaterMark
在课堂
EpollChannelConfig
@Deprecated public EpollServerChannelConfig setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
ChannelConfig
设置写入缓冲区的低水位标志。 一旦写入缓冲器中排队的字节数超过了high water mark ,然后下降到此值以下, Channel.isWritable()
将再次开始返回true
。
setWriteBufferLowWaterMark
,界面
ChannelConfig
setWriteBufferLowWaterMark
,界面
ServerSocketChannelConfig
setWriteBufferLowWaterMark
在课堂上
EpollChannelConfig
public EpollServerChannelConfig setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)
ChannelConfig
WriteBufferWaterMark
用于设置写入缓冲区的高位和低位水印。
setWriteBufferWaterMark
在界面
ChannelConfig
setWriteBufferWaterMark
在界面
ServerSocketChannelConfig
setWriteBufferWaterMark
在课堂上
EpollChannelConfig
public EpollServerChannelConfig setMessageSizeEstimator(MessageSizeEstimator estimator)
ChannelConfig
MessageSizeEstimator
以检测消息的大小。
setMessageSizeEstimator
,界面
ChannelConfig
setMessageSizeEstimator
在界面
ServerSocketChannelConfig
setMessageSizeEstimator
在课堂上
EpollChannelConfig
public EpollServerChannelConfig setEpollMode(EpollMode mode)
EpollChannelConfig
EpollMode
。
默认值是EpollMode.EDGE_TRIGGERED
。
如果您想要使用DefaultChannelConfig.isAutoRead()
false
或DefaultChannelConfig.getMaxMessagesPerRead()
,并且具有准确的行为,则应使用EpollMode.LEVEL_TRIGGERED
。
请注意,只有在频道注册之前,才能调整此配置设置。
setEpollMode
in class
EpollChannelConfig
Copyright © 2008–2018 The Netty Project. All rights reserved.