public interface OioSocketChannelConfig extends SocketChannelConfig
ChannelConfig
for a OioSocketChannel
.
SocketChannelConfig
,
OioSocketChannelConfig
allows the following options in the
option map:
Name | Associated setter method |
---|---|
ChannelOption.SO_TIMEOUT | setSoTimeout(int) |
限定符和类型 | 方法和说明 |
---|---|
int |
getSoTimeout()
Returns the maximal time a operation on the underlying socket may block.
|
OioSocketChannelConfig |
setAllocator(ByteBufAllocator allocator)
Set the
ByteBufAllocator which is used for the channel
to allocate buffers. |
OioSocketChannelConfig |
setAllowHalfClosure(boolean allowHalfClosure)
Sets whether the channel should not close itself when its remote peer shuts down output to
make the connection half-closed.
|
OioSocketChannelConfig |
setAutoClose(boolean autoClose) |
OioSocketChannelConfig |
setAutoRead(boolean autoRead)
Sets if
ChannelHandlerContext.read() will be invoked automatically so that a user application doesn't
need to call it at all. |
OioSocketChannelConfig |
setConnectTimeoutMillis(int connectTimeoutMillis)
Sets the connect timeout of the channel in milliseconds.
|
OioSocketChannelConfig |
setKeepAlive(boolean keepAlive)
Sets the
StandardSocketOptions.SO_KEEPALIVE option. |
OioSocketChannelConfig |
setMaxMessagesPerRead(int maxMessagesPerRead)
Sets the maximum number of messages to read per read loop.
|
OioSocketChannelConfig |
setMessageSizeEstimator(MessageSizeEstimator estimator)
Set the
MessageSizeEstimator which is used for the channel
to detect the size of a message. |
OioSocketChannelConfig |
setPerformancePreferences(int connectionTime,
int latency,
int bandwidth)
Sets the performance preferences as specified in
Socket.setPerformancePreferences(int, int, int) . |
OioSocketChannelConfig |
setReceiveBufferSize(int receiveBufferSize)
Sets the
StandardSocketOptions.SO_RCVBUF option. |
OioSocketChannelConfig |
setRecvByteBufAllocator(RecvByteBufAllocator allocator)
Set the
ByteBufAllocator which is used for the channel
to allocate receive buffers. |
OioSocketChannelConfig |
setReuseAddress(boolean reuseAddress)
Sets the
StandardSocketOptions.SO_REUSEADDR option. |
OioSocketChannelConfig |
setSendBufferSize(int sendBufferSize)
Sets the
StandardSocketOptions.SO_SNDBUF option. |
OioSocketChannelConfig |
setSoLinger(int soLinger)
Sets the
StandardSocketOptions.SO_LINGER option. |
OioSocketChannelConfig |
setSoTimeout(int timeout)
Sets the maximal time a operation on the underlying socket may block.
|
OioSocketChannelConfig |
setTcpNoDelay(boolean tcpNoDelay)
Sets the
StandardSocketOptions.TCP_NODELAY option. |
OioSocketChannelConfig |
setTrafficClass(int trafficClass)
Sets the
StandardSocketOptions.IP_TOS option. |
OioSocketChannelConfig |
setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
Sets the high water mark of the write buffer.
|
OioSocketChannelConfig |
setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
Sets the low water mark of the write buffer.
|
OioSocketChannelConfig |
setWriteSpinCount(int writeSpinCount)
Sets the maximum loop count for a write operation until
WritableByteChannel.write(ByteBuffer) returns a non-zero value. |
getReceiveBufferSize, getSendBufferSize, getSoLinger, getTrafficClass, isAllowHalfClosure, isKeepAlive, isReuseAddress, isTcpNoDelay
OioSocketChannelConfig setSoTimeout(int timeout)
int getSoTimeout()
OioSocketChannelConfig setTcpNoDelay(boolean tcpNoDelay)
SocketChannelConfig
StandardSocketOptions.TCP_NODELAY
option. Please note that the default value of this option
is true
unlike the operating system default (false
). However, for some buggy platforms, such as
Android, that shows erratic behavior with Nagle's algorithm disabled, the default value remains to be
false
.setTcpNoDelay
在接口中 SocketChannelConfig
OioSocketChannelConfig setSoLinger(int soLinger)
SocketChannelConfig
StandardSocketOptions.SO_LINGER
option.setSoLinger
在接口中 SocketChannelConfig
OioSocketChannelConfig setSendBufferSize(int sendBufferSize)
SocketChannelConfig
StandardSocketOptions.SO_SNDBUF
option.setSendBufferSize
在接口中 SocketChannelConfig
OioSocketChannelConfig setReceiveBufferSize(int receiveBufferSize)
SocketChannelConfig
StandardSocketOptions.SO_RCVBUF
option.setReceiveBufferSize
在接口中 SocketChannelConfig
OioSocketChannelConfig setKeepAlive(boolean keepAlive)
SocketChannelConfig
StandardSocketOptions.SO_KEEPALIVE
option.setKeepAlive
在接口中 SocketChannelConfig
OioSocketChannelConfig setTrafficClass(int trafficClass)
SocketChannelConfig
StandardSocketOptions.IP_TOS
option.setTrafficClass
在接口中 SocketChannelConfig
OioSocketChannelConfig setReuseAddress(boolean reuseAddress)
SocketChannelConfig
StandardSocketOptions.SO_REUSEADDR
option.setReuseAddress
在接口中 SocketChannelConfig
OioSocketChannelConfig setPerformancePreferences(int connectionTime, int latency, int bandwidth)
SocketChannelConfig
Socket.setPerformancePreferences(int, int, int)
.setPerformancePreferences
在接口中 SocketChannelConfig
OioSocketChannelConfig setAllowHalfClosure(boolean allowHalfClosure)
SocketChannelConfig
true
the connection is not closed when the
remote peer shuts down output. Instead,
ChannelInboundHandler.userEventTriggered(ChannelHandlerContext, Object)
is invoked with a ChannelInputShutdownEvent
object. If false
, the connection
is closed automatically.setAllowHalfClosure
在接口中 SocketChannelConfig
OioSocketChannelConfig 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
在接口中 SocketChannelConfig
connectTimeoutMillis
- the connect timeout in milliseconds.
0
to disable.OioSocketChannelConfig setMaxMessagesPerRead(int maxMessagesPerRead)
ChannelConfig
setMaxMessagesPerRead
在接口中 ChannelConfig
setMaxMessagesPerRead
在接口中 SocketChannelConfig
OioSocketChannelConfig 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
在接口中 SocketChannelConfig
OioSocketChannelConfig setAllocator(ByteBufAllocator allocator)
ChannelConfig
ByteBufAllocator
which is used for the channel
to allocate buffers.setAllocator
在接口中 ChannelConfig
setAllocator
在接口中 SocketChannelConfig
OioSocketChannelConfig setRecvByteBufAllocator(RecvByteBufAllocator allocator)
ChannelConfig
ByteBufAllocator
which is used for the channel
to allocate receive buffers.setRecvByteBufAllocator
在接口中 ChannelConfig
setRecvByteBufAllocator
在接口中 SocketChannelConfig
OioSocketChannelConfig 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
在接口中 SocketChannelConfig
OioSocketChannelConfig setAutoClose(boolean autoClose)
setAutoClose
在接口中 ChannelConfig
setAutoClose
在接口中 SocketChannelConfig
OioSocketChannelConfig setWriteBufferHighWaterMark(int writeBufferHighWaterMark)
ChannelConfig
Channel.isWritable()
will start to return false
.setWriteBufferHighWaterMark
在接口中 ChannelConfig
OioSocketChannelConfig setWriteBufferLowWaterMark(int writeBufferLowWaterMark)
ChannelConfig
Channel.isWritable()
will start to return
true
again.setWriteBufferLowWaterMark
在接口中 ChannelConfig
OioSocketChannelConfig setMessageSizeEstimator(MessageSizeEstimator estimator)
ChannelConfig
MessageSizeEstimator
which is used for the channel
to detect the size of a message.setMessageSizeEstimator
在接口中 ChannelConfig
setMessageSizeEstimator
在接口中 SocketChannelConfig