public class AdaptiveRecvByteBufAllocator extends DefaultMaxMessagesRecvByteBufAllocator
RecvByteBufAllocator
自动增加和减少反馈时的预测缓冲区大小。
如果先前的读取完全填充了已分配的缓冲区,它会逐渐增加可读字节的预期数量。 如果读取操作无法连续两次填充一定数量的已分配缓冲区,它会逐渐减少可读取字节的预期数量。 否则,它会一直返回相同的预测。
DefaultMaxMessagesRecvByteBufAllocator.MaxMessageHandle
RecvByteBufAllocator.DelegatingHandle, RecvByteBufAllocator.ExtendedHandle, RecvByteBufAllocator.Handle
Modifier and Type | Field and Description |
---|---|
static AdaptiveRecvByteBufAllocator |
DEFAULT
已过时。
|
Constructor and Description |
---|
AdaptiveRecvByteBufAllocator()
用默认参数创建一个新的预测器。
|
AdaptiveRecvByteBufAllocator(int minimum, int initial, int maximum)
用指定的参数创建一个新的预测变量。
|
Modifier and Type | Method and Description |
---|---|
RecvByteBufAllocator.Handle |
newHandle()
创建一个新的句柄。
|
AdaptiveRecvByteBufAllocator |
respectMaybeMoreData(boolean respectMaybeMoreData)
如果我们认为没有更多的数据,确定未来的
RecvByteBufAllocator.newHandle() 实例
是否会停止阅读。
|
maxMessagesPerRead, maxMessagesPerRead, respectMaybeMoreData
@Deprecated public static final AdaptiveRecvByteBufAllocator DEFAULT
DefaultMaxMessagesRecvByteBufAllocator.maxMessagesPerRead()
的状态通常基于通道类型。
public AdaptiveRecvByteBufAllocator()
1024
开始,不低于64
,并且不高于65536
。
public AdaptiveRecvByteBufAllocator(int minimum, int initial, int maximum)
minimum
- 预期缓冲区大小的包含下限
initial
- 未收到反馈时的初始缓冲区大小
maximum
- 预期缓冲区大小的包含上限
public RecvByteBufAllocator.Handle newHandle()
RecvByteBufAllocator
public AdaptiveRecvByteBufAllocator respectMaybeMoreData(boolean respectMaybeMoreData)
RecvByteBufAllocator.newHandle()
的未来实例
是否会停止阅读。
respectMaybeMoreData
在课程
DefaultMaxMessagesRecvByteBufAllocator
respectMaybeMoreData
-
true
如果我们认为没有更多数据,就停止阅读。 这可以节省一个系统调用来从套接字读取数据,但是如果数据已经以快速的方式到达,我们可能会放弃我们的DefaultMaxMessagesRecvByteBufAllocator.maxMessagesPerRead()
量程,并且必须等待选择器通知我们更多的数据。 false
继续阅读(最多DefaultMaxMessagesRecvByteBufAllocator.maxMessagesPerRead()
)或直到我们尝试阅读时没有数据。 this
。
Copyright © 2008–2018 The Netty Project. All rights reserved.