public final class EpollDatagramChannelConfig extends EpollChannelConfig implements DatagramChannelConfig
Modifier and Type | Method and Description |
---|---|
java.net.InetAddress |
getInterface()
获取用于多播数据包的网络接口的地址。
|
java.net.NetworkInterface |
getNetworkInterface()
获取
StandardSocketOptions.IP_MULTICAST_IF 选项。
|
<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 |
getTimeToLive()
获取
StandardSocketOptions.IP_MULTICAST_TTL 选项。
|
int |
getTrafficClass()
获取
StandardSocketOptions.IP_TOS 选项。
|
boolean |
isBroadcast()
获取
StandardSocketOptions.SO_BROADCAST 选项。
|
boolean |
isLoopbackModeDisabled()
获取
StandardSocketOptions.IP_MULTICAST_LOOP 选项。
|
boolean |
isReuseAddress()
获取
StandardSocketOptions.SO_REUSEADDR 选项。
|
boolean |
isReusePort()
如果设置了SO_REUSEPORT选项,则返回
true 。
|
EpollDatagramChannelConfig |
setAllocator(ByteBufAllocator allocator)
设置用于通道分配缓冲区的 ByteBufAllocator 。
|
EpollDatagramChannelConfig |
setAutoClose(boolean autoClose) |
EpollDatagramChannelConfig |
setAutoRead(boolean autoRead)
设置是否自动调用
ChannelHandlerContext.read() ,以便用户应用程序根本不需要调用它。
|
EpollDatagramChannelConfig |
setBroadcast(boolean broadcast)
设置
StandardSocketOptions.SO_BROADCAST 选项。
|
EpollDatagramChannelConfig |
setConnectTimeoutMillis(int connectTimeoutMillis)
以毫秒为单位设置通道的连接超时。
|
EpollDatagramChannelConfig |
setEpollMode(EpollMode mode)
设置使用的 EpollMode 。
|
EpollDatagramChannelConfig |
setInterface(java.net.InetAddress interfaceAddress)
设置用于多播数据包的网络接口的地址。
|
DatagramChannelConfig |
setLoopbackModeDisabled(boolean loopbackModeDisabled)
设置
StandardSocketOptions.IP_MULTICAST_LOOP 选项。
|
EpollDatagramChannelConfig |
setMaxMessagesPerRead(int maxMessagesPerRead)
已过时。
|
EpollDatagramChannelConfig |
setMessageSizeEstimator(MessageSizeEstimator estimator)
设置用于通道的 MessageSizeEstimator 以检测消息的大小。
|
EpollDatagramChannelConfig |
setNetworkInterface(java.net.NetworkInterface networkInterface)
设置
StandardSocketOptions.IP_MULTICAST_IF 选项。
|
<T> boolean |
setOption(ChannelOption<T> option, T value)
使用指定的名称和值设置配置属性。
|
EpollDatagramChannelConfig |
setReceiveBufferSize(int receiveBufferSize)
设置
StandardSocketOptions.SO_RCVBUF 选项。
|
EpollDatagramChannelConfig |
setRecvByteBufAllocator(RecvByteBufAllocator allocator)
设置用于通道分配接收缓冲区的 RecvByteBufAllocator 。
|
EpollDatagramChannelConfig |
setReuseAddress(boolean reuseAddress)
获取
StandardSocketOptions.SO_REUSEADDR 选项。
|
EpollDatagramChannelConfig |
setReusePort(boolean reusePort)
在基础通道上设置SO_REUSEPORT选项。
|
EpollDatagramChannelConfig |
setSendBufferSize(int sendBufferSize)
设置
StandardSocketOptions.SO_SNDBUF 选项。
|
EpollDatagramChannelConfig |
setTimeToLive(int ttl)
设置
StandardSocketOptions.IP_MULTICAST_TTL 选项。
|
EpollDatagramChannelConfig |
setTrafficClass(int trafficClass)
设置
StandardSocketOptions.IP_TOS 选项。
|
EpollDatagramChannelConfig |
setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
已过时。
|
EpollDatagramChannelConfig |
setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
已过时。
|
EpollDatagramChannelConfig |
setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)
设置 WriteBufferWaterMark ,用于设置写缓冲区的高位和低位水印。
|
EpollDatagramChannelConfig |
setWriteSpinCount(int writeSpinCount)
设置写操作的最大循环计数,直到
WritableByteChannel.write(ByteBuffer) 返回非零值。
|
autoReadCleared, getEpollMode
getAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMessageSizeEstimator, getOptions, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteBufferWaterMark, getWriteSpinCount, isAutoClose, isAutoRead, setOptions, validate
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMessageSizeEstimator, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteBufferWaterMark, getWriteSpinCount, isAutoClose, isAutoRead, 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 EpollDatagramChannelConfig setMessageSizeEstimator(MessageSizeEstimator estimator)
ChannelConfig
复制的描述
MessageSizeEstimator
以检测消息的大小。
setMessageSizeEstimator
接口
ChannelConfig
setMessageSizeEstimator
在界面
DatagramChannelConfig
setMessageSizeEstimator
在课堂
EpollChannelConfig
@Deprecated public EpollDatagramChannelConfig setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
ChannelConfig
设置写入缓冲区的低水位标志。 一旦写入缓冲器中排队的字节数超过high water mark ,然后降到此值以下, Channel.isWritable()
将再次开始返回true
。
setWriteBufferLowWaterMark
在界面
ChannelConfig
setWriteBufferLowWaterMark
在课堂
EpollChannelConfig
@Deprecated public EpollDatagramChannelConfig setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
ChannelConfig
设置写入缓冲区的高位标记。 如果写入缓冲区中排队的字节数超过此值,则Channel.isWritable()
将开始返回false
。
setWriteBufferHighWaterMark
接口
ChannelConfig
setWriteBufferHighWaterMark
在课堂上
EpollChannelConfig
public EpollDatagramChannelConfig setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)
ChannelConfig
WriteBufferWaterMark
。
setWriteBufferWaterMark
接口
ChannelConfig
setWriteBufferWaterMark
在界面
DatagramChannelConfig
setWriteBufferWaterMark
在课堂
EpollChannelConfig
public EpollDatagramChannelConfig setAutoClose(boolean autoClose)
setAutoClose
在界面
ChannelConfig
setAutoClose
在界面
DatagramChannelConfig
setAutoClose
在课堂
DefaultChannelConfig
public EpollDatagramChannelConfig setAutoRead(boolean autoRead)
ChannelConfig
复制的描述
ChannelHandlerContext.read()
,以便用户应用程序根本不需要调用它。
默认值是true
。
setAutoRead
接口
ChannelConfig
setAutoRead
在界面
DatagramChannelConfig
setAutoRead
在课堂
EpollChannelConfig
public EpollDatagramChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator)
ChannelConfig
RecvByteBufAllocator
。
setRecvByteBufAllocator
在界面
ChannelConfig
setRecvByteBufAllocator
接口
DatagramChannelConfig
setRecvByteBufAllocator
在课堂
EpollChannelConfig
public EpollDatagramChannelConfig setWriteSpinCount(int writeSpinCount)
ChannelConfig
WritableByteChannel.write(ByteBuffer)
返回一个非零值。
它类似于在并发编程中使用自旋锁。
它可以提高内存利用率并根据运行JVM的平台来编写吞吐量。
默认值是16
。
setWriteSpinCount
在界面
ChannelConfig
setWriteSpinCount
在界面
DatagramChannelConfig
setWriteSpinCount
在课堂
EpollChannelConfig
public EpollDatagramChannelConfig setAllocator(ByteBufAllocator allocator)
ChannelConfig
复制的描述
ByteBufAllocator
。
setAllocator
接口
ChannelConfig
setAllocator
,界面
DatagramChannelConfig
setAllocator
在课堂
EpollChannelConfig
public EpollDatagramChannelConfig setConnectTimeoutMillis(int connectTimeoutMillis)
ChannelConfig
复制的描述
Channel
不支持连接操作,则完全不使用此属性,因此将被忽略。
setConnectTimeoutMillis
,界面
ChannelConfig
setConnectTimeoutMillis
在界面
DatagramChannelConfig
setConnectTimeoutMillis
EpollChannelConfig
connectTimeoutMillis
- 以毫秒为单位的连接超时。
0
禁用。
@Deprecated public EpollDatagramChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead)
DefaultChannelConfig
setMaxMessagesPerRead
接口
ChannelConfig
setMaxMessagesPerRead
在界面
DatagramChannelConfig
setMaxMessagesPerRead
在课堂
EpollChannelConfig
public int getSendBufferSize()
DatagramChannelConfig
复制的描述
StandardSocketOptions.SO_SNDBUF
选项。
getSendBufferSize
在界面
DatagramChannelConfig
public EpollDatagramChannelConfig setSendBufferSize(int sendBufferSize)
DatagramChannelConfig
复制的描述
StandardSocketOptions.SO_SNDBUF
选项。
setSendBufferSize
在界面
DatagramChannelConfig
public int getReceiveBufferSize()
DatagramChannelConfig
StandardSocketOptions.SO_RCVBUF
选项。
getReceiveBufferSize
,界面
DatagramChannelConfig
public EpollDatagramChannelConfig setReceiveBufferSize(int receiveBufferSize)
DatagramChannelConfig
复制的描述
StandardSocketOptions.SO_RCVBUF
选项。
setReceiveBufferSize
在界面
DatagramChannelConfig
public int getTrafficClass()
DatagramChannelConfig
StandardSocketOptions.IP_TOS
选项。
getTrafficClass
,界面
DatagramChannelConfig
public EpollDatagramChannelConfig setTrafficClass(int trafficClass)
DatagramChannelConfig
复制的描述
StandardSocketOptions.IP_TOS
选项。
setTrafficClass
接口
DatagramChannelConfig
public boolean isReuseAddress()
DatagramChannelConfig
复制的描述
StandardSocketOptions.SO_REUSEADDR
选项。
isReuseAddress
接口
DatagramChannelConfig
public EpollDatagramChannelConfig setReuseAddress(boolean reuseAddress)
DatagramChannelConfig
复制的描述
StandardSocketOptions.SO_REUSEADDR
选项。
setReuseAddress
,界面
DatagramChannelConfig
public boolean isBroadcast()
DatagramChannelConfig
复制的描述
StandardSocketOptions.SO_BROADCAST
选项。
isBroadcast
,界面
DatagramChannelConfig
public EpollDatagramChannelConfig setBroadcast(boolean broadcast)
DatagramChannelConfig
复制的描述
StandardSocketOptions.SO_BROADCAST
选项。
setBroadcast
接口
DatagramChannelConfig
public boolean isLoopbackModeDisabled()
DatagramChannelConfig
复制的描述
StandardSocketOptions.IP_MULTICAST_LOOP
选项。
isLoopbackModeDisabled
接口
DatagramChannelConfig
true
当且仅当环回模式已被禁用
public DatagramChannelConfig setLoopbackModeDisabled(boolean loopbackModeDisabled)
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_LOOP
选项。
setLoopbackModeDisabled
,界面
DatagramChannelConfig
loopbackModeDisabled
-
true
当且仅当环回模式已被禁用
public int getTimeToLive()
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_TTL
选项。
getTimeToLive
在界面
DatagramChannelConfig
public EpollDatagramChannelConfig setTimeToLive(int ttl)
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_TTL
选项。
setTimeToLive
接口
DatagramChannelConfig
public java.net.InetAddress getInterface()
DatagramChannelConfig
getInterface
接口
DatagramChannelConfig
public EpollDatagramChannelConfig setInterface(java.net.InetAddress interfaceAddress)
DatagramChannelConfig
复制的描述
setInterface
接口
DatagramChannelConfig
public java.net.NetworkInterface getNetworkInterface()
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_IF
选项。
getNetworkInterface
接口
DatagramChannelConfig
public EpollDatagramChannelConfig setNetworkInterface(java.net.NetworkInterface networkInterface)
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_IF
选项。
setNetworkInterface
接口
DatagramChannelConfig
public EpollDatagramChannelConfig setEpollMode(EpollMode mode)
EpollChannelConfig
EpollMode
。
默认值是EpollMode.EDGE_TRIGGERED
。
如果您想使用DefaultChannelConfig.isAutoRead()
false
或DefaultChannelConfig.getMaxMessagesPerRead()
,并且具有准确的行为,则应使用EpollMode.LEVEL_TRIGGERED
。
请注意,只有在频道注册之前,才能调整此配置设置。
setEpollMode
在课堂
EpollChannelConfig
public boolean isReusePort()
true
。
public EpollDatagramChannelConfig setReusePort(boolean reusePort)
EpollSocketChannel
绑定到相同的端口,因此可以接受多个线程的连接。
请注意,在AbstractChannel.bind(java.net.SocketAddress)
之前需要调用此方法才能产生任何影响。
Copyright © 2008–2018 The Netty Project. All rights reserved.