@UnstableApi public final class KQueueDatagramChannelConfig extends KQueueChannelConfig implements DatagramChannelConfig
channel
限定符和类型 | 方法和说明 |
---|---|
java.net.InetAddress |
getInterface()
Gets the address of the network interface used for multicast packets.
|
java.net.NetworkInterface |
getNetworkInterface()
Gets the
StandardSocketOptions.IP_MULTICAST_IF option. |
<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 |
getReceiveBufferSize()
Gets the
StandardSocketOptions.SO_RCVBUF option. |
int |
getSendBufferSize()
Gets the
StandardSocketOptions.SO_SNDBUF option. |
int |
getTimeToLive()
Gets the
StandardSocketOptions.IP_MULTICAST_TTL option. |
int |
getTrafficClass()
Gets the
StandardSocketOptions.IP_TOS option. |
boolean |
isBroadcast()
Gets the
StandardSocketOptions.SO_BROADCAST option. |
boolean |
isLoopbackModeDisabled()
Gets the
StandardSocketOptions.IP_MULTICAST_LOOP option. |
boolean |
isReuseAddress()
Gets the
StandardSocketOptions.SO_REUSEADDR option. |
boolean |
isReusePort()
Returns
true if the SO_REUSEPORT option is set. |
KQueueDatagramChannelConfig |
setAllocator(ByteBufAllocator allocator)
Set the
ByteBufAllocator which is used for the channel
to allocate buffers. |
KQueueDatagramChannelConfig |
setAutoClose(boolean autoClose)
Sets whether the
Channel should be closed automatically and immediately on write failure. |
KQueueDatagramChannelConfig |
setAutoRead(boolean autoRead)
Sets if
ChannelHandlerContext.read() will be invoked automatically so that a user application doesn't
need to call it at all. |
KQueueDatagramChannelConfig |
setBroadcast(boolean broadcast)
Sets the
StandardSocketOptions.SO_BROADCAST option. |
KQueueDatagramChannelConfig |
setConnectTimeoutMillis(int connectTimeoutMillis)
Sets the connect timeout of the channel in milliseconds.
|
KQueueDatagramChannelConfig |
setInterface(java.net.InetAddress interfaceAddress)
Sets the address of the network interface used for multicast packets.
|
DatagramChannelConfig |
setLoopbackModeDisabled(boolean loopbackModeDisabled)
Sets the
StandardSocketOptions.IP_MULTICAST_LOOP option. |
KQueueDatagramChannelConfig |
setMaxMessagesPerRead(int maxMessagesPerRead)
已过时。
|
KQueueDatagramChannelConfig |
setMaxMessagesPerWrite(int maxMessagesPerWrite)
Set the maximum number of message to write per eventloop run.
|
KQueueDatagramChannelConfig |
setMessageSizeEstimator(MessageSizeEstimator estimator)
Set the
MessageSizeEstimator which is used for the channel
to detect the size of a message. |
KQueueDatagramChannelConfig |
setNetworkInterface(java.net.NetworkInterface networkInterface)
Sets the
StandardSocketOptions.IP_MULTICAST_IF option. |
<T> boolean |
setOption(ChannelOption<T> option,
T value)
Sets a configuration property with the specified name and value.
|
KQueueDatagramChannelConfig |
setRcvAllocTransportProvidesGuess(boolean transportProvidesGuess)
If this is
true then the RecvByteBufAllocator.Handle#guess() will be overridden to always attempt
to read as many bytes as kqueue says are available. |
KQueueDatagramChannelConfig |
setReceiveBufferSize(int receiveBufferSize)
Sets the
StandardSocketOptions.SO_RCVBUF option. |
KQueueDatagramChannelConfig |
setRecvByteBufAllocator(RecvByteBufAllocator allocator)
Set the
RecvByteBufAllocator which is used for the channel to allocate receive buffers. |
KQueueDatagramChannelConfig |
setReuseAddress(boolean reuseAddress)
Gets the
StandardSocketOptions.SO_REUSEADDR option. |
KQueueDatagramChannelConfig |
setReusePort(boolean reusePort)
Set the SO_REUSEPORT option on the underlying Channel.
|
KQueueDatagramChannelConfig |
setSendBufferSize(int sendBufferSize)
Sets the
StandardSocketOptions.SO_SNDBUF option. |
KQueueDatagramChannelConfig |
setTimeToLive(int ttl)
Sets the
StandardSocketOptions.IP_MULTICAST_TTL option. |
KQueueDatagramChannelConfig |
setTrafficClass(int trafficClass)
Sets the
StandardSocketOptions.IP_TOS option. |
KQueueDatagramChannelConfig |
setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
已过时。
|
KQueueDatagramChannelConfig |
setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
已过时。
|
KQueueDatagramChannelConfig |
setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)
Set the
WriteBufferWaterMark which is used for setting the high and low
water mark of the write buffer. |
KQueueDatagramChannelConfig |
setWriteSpinCount(int writeSpinCount)
Sets the maximum loop count for a write operation until
WritableByteChannel.write(ByteBuffer) returns a non-zero value. |
autoReadCleared, getRcvAllocTransportProvidesGuess
getAllocator, getConnectTimeoutMillis, getMaxMessagesPerRead, getMaxMessagesPerWrite, getMessageSizeEstimator, getOptions, getRecvByteBufAllocator, getWriteBufferHighWaterMark, getWriteBufferLowWaterMark, getWriteBufferWaterMark, getWriteSpinCount, isAutoClose, isAutoRead, setOptions, validate
public java.util.Map<ChannelOption<?>,java.lang.Object> getOptions()
ChannelConfig
ChannelOption
's.getOptions
在接口中 ChannelConfig
getOptions
在类中 KQueueChannelConfig
public <T> T getOption(ChannelOption<T> option)
ChannelConfig
ChannelOption
getOption
在接口中 ChannelConfig
getOption
在类中 KQueueChannelConfig
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
在类中 KQueueChannelConfig
true
if and only if the property has been setpublic boolean isReusePort()
true
if the SO_REUSEPORT option is set.public KQueueDatagramChannelConfig setReusePort(boolean reusePort)
KQueueSocketChannel
s 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 KQueueDatagramChannelConfig setRcvAllocTransportProvidesGuess(boolean transportProvidesGuess)
KQueueChannelConfig
true
then the RecvByteBufAllocator.Handle#guess()
will be overridden to always attempt
to read as many bytes as kqueue says are available.public KQueueDatagramChannelConfig setMessageSizeEstimator(MessageSizeEstimator estimator)
ChannelConfig
MessageSizeEstimator
which is used for the channel
to detect the size of a message.setMessageSizeEstimator
在接口中 ChannelConfig
setMessageSizeEstimator
在接口中 DatagramChannelConfig
setMessageSizeEstimator
在类中 KQueueChannelConfig
@Deprecated public KQueueDatagramChannelConfig 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.
setWriteBufferLowWaterMark
在接口中 ChannelConfig
setWriteBufferLowWaterMark
在类中 KQueueChannelConfig
@Deprecated public KQueueDatagramChannelConfig 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
.
public KQueueDatagramChannelConfig setWriteBufferWaterMark(WriteBufferWaterMark writeBufferWaterMark)
ChannelConfig
WriteBufferWaterMark
which is used for setting the high and low
water mark of the write buffer.setWriteBufferWaterMark
在接口中 ChannelConfig
setWriteBufferWaterMark
在接口中 DatagramChannelConfig
setWriteBufferWaterMark
在类中 KQueueChannelConfig
public KQueueDatagramChannelConfig setAutoClose(boolean autoClose)
ChannelConfig
Channel
should be closed automatically and immediately on write failure.
The default is true
.setAutoClose
在接口中 ChannelConfig
setAutoClose
在接口中 DatagramChannelConfig
setAutoClose
在类中 DefaultChannelConfig
public KQueueDatagramChannelConfig 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
在接口中 DatagramChannelConfig
setAutoRead
在类中 KQueueChannelConfig
public KQueueDatagramChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator)
ChannelConfig
RecvByteBufAllocator
which is used for the channel to allocate receive buffers.setRecvByteBufAllocator
在接口中 ChannelConfig
setRecvByteBufAllocator
在接口中 DatagramChannelConfig
setRecvByteBufAllocator
在类中 KQueueChannelConfig
public KQueueDatagramChannelConfig 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
在接口中 DatagramChannelConfig
setWriteSpinCount
在类中 KQueueChannelConfig
public KQueueDatagramChannelConfig setAllocator(ByteBufAllocator allocator)
ChannelConfig
ByteBufAllocator
which is used for the channel
to allocate buffers.setAllocator
在接口中 ChannelConfig
setAllocator
在接口中 DatagramChannelConfig
setAllocator
在类中 KQueueChannelConfig
public KQueueDatagramChannelConfig 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
在接口中 DatagramChannelConfig
setConnectTimeoutMillis
在类中 KQueueChannelConfig
connectTimeoutMillis
- the connect timeout in milliseconds.
0
to disable.@Deprecated public KQueueDatagramChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead)
DefaultChannelConfig
setMaxMessagesPerRead
在接口中 ChannelConfig
setMaxMessagesPerRead
在接口中 DatagramChannelConfig
setMaxMessagesPerRead
在类中 KQueueChannelConfig
public int getSendBufferSize()
DatagramChannelConfig
StandardSocketOptions.SO_SNDBUF
option.getSendBufferSize
在接口中 DatagramChannelConfig
public KQueueDatagramChannelConfig setSendBufferSize(int sendBufferSize)
DatagramChannelConfig
StandardSocketOptions.SO_SNDBUF
option.setSendBufferSize
在接口中 DatagramChannelConfig
public int getReceiveBufferSize()
DatagramChannelConfig
StandardSocketOptions.SO_RCVBUF
option.getReceiveBufferSize
在接口中 DatagramChannelConfig
public KQueueDatagramChannelConfig setReceiveBufferSize(int receiveBufferSize)
DatagramChannelConfig
StandardSocketOptions.SO_RCVBUF
option.setReceiveBufferSize
在接口中 DatagramChannelConfig
public int getTrafficClass()
DatagramChannelConfig
StandardSocketOptions.IP_TOS
option.getTrafficClass
在接口中 DatagramChannelConfig
public KQueueDatagramChannelConfig setTrafficClass(int trafficClass)
DatagramChannelConfig
StandardSocketOptions.IP_TOS
option.setTrafficClass
在接口中 DatagramChannelConfig
public boolean isReuseAddress()
DatagramChannelConfig
StandardSocketOptions.SO_REUSEADDR
option.isReuseAddress
在接口中 DatagramChannelConfig
public KQueueDatagramChannelConfig setReuseAddress(boolean reuseAddress)
DatagramChannelConfig
StandardSocketOptions.SO_REUSEADDR
option.setReuseAddress
在接口中 DatagramChannelConfig
public boolean isBroadcast()
DatagramChannelConfig
StandardSocketOptions.SO_BROADCAST
option.isBroadcast
在接口中 DatagramChannelConfig
public KQueueDatagramChannelConfig setBroadcast(boolean broadcast)
DatagramChannelConfig
StandardSocketOptions.SO_BROADCAST
option.setBroadcast
在接口中 DatagramChannelConfig
public boolean isLoopbackModeDisabled()
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_LOOP
option.isLoopbackModeDisabled
在接口中 DatagramChannelConfig
true
if and only if the loopback mode has been disabledpublic DatagramChannelConfig setLoopbackModeDisabled(boolean loopbackModeDisabled)
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_LOOP
option.setLoopbackModeDisabled
在接口中 DatagramChannelConfig
loopbackModeDisabled
- true
if and only if the loopback mode has been disabledpublic int getTimeToLive()
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_TTL
option.getTimeToLive
在接口中 DatagramChannelConfig
public KQueueDatagramChannelConfig setTimeToLive(int ttl)
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_TTL
option.setTimeToLive
在接口中 DatagramChannelConfig
public java.net.InetAddress getInterface()
DatagramChannelConfig
getInterface
在接口中 DatagramChannelConfig
public KQueueDatagramChannelConfig setInterface(java.net.InetAddress interfaceAddress)
DatagramChannelConfig
setInterface
在接口中 DatagramChannelConfig
public java.net.NetworkInterface getNetworkInterface()
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_IF
option.getNetworkInterface
在接口中 DatagramChannelConfig
public KQueueDatagramChannelConfig setNetworkInterface(java.net.NetworkInterface networkInterface)
DatagramChannelConfig
StandardSocketOptions.IP_MULTICAST_IF
option.setNetworkInterface
在接口中 DatagramChannelConfig
public KQueueDatagramChannelConfig setMaxMessagesPerWrite(int maxMessagesPerWrite)
DefaultChannelConfig